Accélerer le compteur suivant (voir fichier joint - VB/VBA/VBS - Programmation
Marsh Posté le 11-07-2006 à 20:19:40
PedroBD a écrit : Bonjour, |
sans modifier la valeur sur une cellule, déjà tu gagnes du temps...
après accélérer un compteur, j'comprends pas ce que tu veux...
Marsh Posté le 11-07-2006 à 21:02:05
Ben si je modifie les valeurs des cellules, mais je veux juste que le compteur aille plus vite. Qu'il compte plus vite quoi! Je vois pas trop comment dire autrement...
Marsh Posté le 11-07-2006 à 22:09:31
bonsoir,
Je viens de faire un petit test sans prétention sur une boucle For... Next
Si on ne lui demande pas grand chose elle exécute ton compteur en 10 jours environ : avec un petit calcul, une conversion et une cause if : 28 à 29 jours.
Au delà, ça dépend surtout de ce que tu mets dans ta boucle For et sutout de la manière dont tu le mets....
A+
Marsh Posté le 11-07-2006 à 22:41:03
Euh... Sinon il y a le Step :
Avec un Step de 1000 en 5 minutes c'est baclé !
Marsh Posté le 12-07-2006 à 08:46:27
galopin01 a écrit : bonsoir, |
Ca serait possible que je t'envoie mon code par mail? Parce que je vois pas comment tu atteinds des vitesses comme ça. Moi c'est franchement lent! Mais j'admets qu'il y a plusieurs if dans le code!
Sinon pour le step, je vois pas très bien comment, vu que ça fait sauter des étapes de calcul, non?
Marsh Posté le 12-07-2006 à 09:28:06
Ben à chaque incrémentation du compteur, je fais une série de calculs à partir de valeurs de cellules d'un tableau et j'inscris le résultat dans d'autres cellules. En fait le but du compteur est de lancer ces calculs 999999999999-100110011001 fois, mais le plus rapidement possible; c'est à dire au bout de 3 mois max, je dois avoir tout fini!
Le truc c'est qu'avec ou sans calculs, déjà à la base, le compteur est trop lent. Je peux te l'envoyer si tu veux!
Je sais, c'est compliqué...mais j'espère vous donner assez d'élèments pour que vous compreniez!
Marsh Posté le 12-07-2006 à 09:30:43
PedroBD a écrit : Ben à chaque incrémentation du compteur, je fais une série de calculs à partir de valeurs de cellules d'un tableau et j'inscris le résultat dans d'autres cellules. En fait le but du compteur est de lancer ces calculs 999999999999-100110011001 fois, mais le plus rapidement possible; c'est à dire au bout de 3 mois max, je dois avoir tout fini! |
et au lieu de faire de 100....01 à 999..99, pkoi ne découpes tu pas ton compteur en plusieurs tronçons ??
Marsh Posté le 12-07-2006 à 09:33:20
Ben c'est le cas pour l'instant, j'utilise 3 cellules différentes. Tu veux pas que je t'envoie le fichier?
Marsh Posté le 12-07-2006 à 09:37:21
essayons, mais accélérer un compteur, je vois pas d'où on peut le faire...
à part écrémer le code à l'intérieur ^^
Marsh Posté le 12-07-2006 à 09:43:09
Paul Hood a écrit : Ou changer de machine !! |
Je suis sur un P4 3,GHz, 512 Mo RAM.
J'ai déjà essayé sur un Biproc et sur un P4 avec 1Go RAM et rien n'a changé, toujours la même vitesse!
Marsh Posté le 12-07-2006 à 13:08:57
Essaie avec celui-là http://fr.wikipedia.org/wiki/Blue_Gene
Sérieusement, il est impossible « d'accélérer le compteur » comme tu le veux.
La vitesse d'interprétation des instructions VB est directement liée aux performances de ta machine (vitesse proc, mémoire dispo, cache, autres traitemenst en cours, ...).
Soit tu changes de machine, soit tu trouves une astuce pour extrapoler tes calculs (et donc ne pas passer par toutes les valeurs de compteurs) ou je ne sais quelle autre idée géniale (utiliser un autre langage ?).
NB: ton biproc ne va sûrement pas accélérer les choses avec VB6; ton traitement aura une vitesse identique à celle de l'un des deux procs, soit probablement pas mieux que ton P4 3GHz effectivement.
Marsh Posté le 11-07-2006 à 20:10:03
Bonjour,
J'ai créé un compteur sous en VBA sous Excel. Ce compteur me sert à effectuer une série de calculs à chaque occurence.
Pb: que je fass ou non ces calculs, le compteur va trop lentement pour moi. En effet, je vais de la valeur 100110011001 à 999999999999. Imaginez le temps qu'il me faudrait pour arriver au bout!
J'aimerais faire en sorte qu'il arrive au bout en quelques jours, voire 1 à 2 mois maximum. Pour l'instant ça me prendrait des dizaines d'années!!
Merci de votre aide. Je peux vous envoyer le compteur par mail si vous voulez.