Accélerer le compteur suivant (voir fichier joint

Accélerer le compteur suivant (voir fichier joint - VB/VBA/VBS - Programmation

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.

Reply

Marsh Posté le 11-07-2006 à 20:10:03   

Reply

Marsh Posté le 11-07-2006 à 20:19:40    

PedroBD a écrit :

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.


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...

Reply

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...

Reply

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+

Message cité 1 fois
Message édité par galopin01 le 11-07-2006 à 22:10:13
Reply

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é !
 :D

Reply

Marsh Posté le 12-07-2006 à 08:46:27    

galopin01 a écrit :

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+


 
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?

Reply

Marsh Posté le 12-07-2006 à 09:19:44    

elles te servent à quoi ces étapes de calcul ?

Reply

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!

Reply

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!
 
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!


et au lieu de faire de 100....01 à 999..99, pkoi ne découpes tu pas ton compteur en plusieurs tronçons ??

Reply

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?

Reply

Marsh Posté le 12-07-2006 à 09:33:20   

Reply

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 ^^

Reply

Marsh Posté le 12-07-2006 à 09:40:10    

Ou changer de machine !!

Reply

Marsh Posté le 12-07-2006 à 09:40:51    

Ok, tu m'envoie une adresse mail en pv?

Reply

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!

Reply

Marsh Posté le 12-07-2006 à 13:08:57    

Essaie avec celui-là http://fr.wikipedia.org/wiki/Blue_Gene :p
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.

Reply

Marsh Posté le 29-08-2006 à 11:48:37    

lol, belle marchine

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed