Temps d'execution moyen d'une macro
Fermé
wida
Messages postés
150
Date d'inscription
lundi 5 novembre 2007
Statut
Membre
Dernière intervention
28 novembre 2011
-
23 juin 2009 à 13:48
wida Messages postés 150 Date d'inscription lundi 5 novembre 2007 Statut Membre Dernière intervention 28 novembre 2011 - 23 juin 2009 à 15:22
wida Messages postés 150 Date d'inscription lundi 5 novembre 2007 Statut Membre Dernière intervention 28 novembre 2011 - 23 juin 2009 à 15:22
Bonjour,
j'aimerai savoir qu'elle est le temps d'execution moyen d'une instruction en VBA,
au fait j'ai une macro qui met jusqu'a 10 mn de temps d'execution et je trouva pas ça normale!! je pense si je met la meme chose en c++ ça mettra moin de temps!!
qlq un a t il une idée?
j'aimerai savoir qu'elle est le temps d'execution moyen d'une instruction en VBA,
au fait j'ai une macro qui met jusqu'a 10 mn de temps d'execution et je trouva pas ça normale!! je pense si je met la meme chose en c++ ça mettra moin de temps!!
qlq un a t il une idée?
A voir également:
- Temps d'execution moyen d'une macro
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Calculer une moyenne sur excel - Guide
- Combien de temps reste une story sur facebook - Guide
- Renommer plusieurs fichiers en même temps - Guide
- Jitbit macro recorder - Télécharger - Confidentialité
4 réponses
Bidouilleu_R
Messages postés
1181
Date d'inscription
mardi 27 mai 2008
Statut
Membre
Dernière intervention
12 juillet 2012
295
23 juin 2009 à 14:50
23 juin 2009 à 14:50
Bonjour
tu es libre de faire ce que tu veux....
en vba ce qui ralentit le plus sont :
les affichage et mise à jour de l'affichage.
(windows fait le tour de la fenêtre et de l'appartement)
en VBA l'utilisation de application.screenupdatinge=false puis à la fin =true
maintenant si vba te prends 10 mn c'est sans doute qu'il en a besoin.
moi je dirais : 10 mn ( cela te donne le temps de lire tes mails)
et de toute manière si vba ne l'avais pas qqun aurait passé 2ou3h avec une autre méthode.
La question est donc combien de temps vas-tu gagner?
fais un essai simple
en vba et en C genre met un chiffre ale&toire en A et en B en c= A*2+B sur 50000 cellules
top chrono
tu auras des surprises.
Bon courage.
tu es libre de faire ce que tu veux....
en vba ce qui ralentit le plus sont :
les affichage et mise à jour de l'affichage.
(windows fait le tour de la fenêtre et de l'appartement)
en VBA l'utilisation de application.screenupdatinge=false puis à la fin =true
maintenant si vba te prends 10 mn c'est sans doute qu'il en a besoin.
moi je dirais : 10 mn ( cela te donne le temps de lire tes mails)
et de toute manière si vba ne l'avais pas qqun aurait passé 2ou3h avec une autre méthode.
La question est donc combien de temps vas-tu gagner?
fais un essai simple
en vba et en C genre met un chiffre ale&toire en A et en B en c= A*2+B sur 50000 cellules
top chrono
tu auras des surprises.
Bon courage.
Bidouilleu_R
Messages postés
1181
Date d'inscription
mardi 27 mai 2008
Statut
Membre
Dernière intervention
12 juillet 2012
295
23 juin 2009 à 14:06
23 juin 2009 à 14:06
Le "temps moyen" d'execution dépend du nombre de calcul que le processeur doit effectué.
Pour les plus "agés" , je dirai "le fût du canon pour refroidir"... la réponse est c'est écrit dans le manuel
..... un certain temps ; )
mais sérieusement cela dépend plus de l'architecture et de l'os que de l'applicatif.
ainsi, un même programme vba (excel) ou vb ou c++ te donneras 2 temps d'exécution différent selon l'os
et la machine.
pour preuve. l'execution d'un code basic sous open office 3.0 avec win xp me donnes une différence de 12s
avec le même code sous ubuntu 9.04 et openoffice 3.0. ( même machine)
donc en conclusion si ton code met trop de temps je te conseille 2 choses :
1) simplifie les boucles et les actions
2) utilise la barre d'état pour savoir si ça tourne ou non.
regarde application.statusbar....
Met si tu veux écrire en c++ ... tu as mon autorisation ...mais tu n'en a pas besoin.
A+
A+
Pour les plus "agés" , je dirai "le fût du canon pour refroidir"... la réponse est c'est écrit dans le manuel
..... un certain temps ; )
mais sérieusement cela dépend plus de l'architecture et de l'os que de l'applicatif.
ainsi, un même programme vba (excel) ou vb ou c++ te donneras 2 temps d'exécution différent selon l'os
et la machine.
pour preuve. l'execution d'un code basic sous open office 3.0 avec win xp me donnes une différence de 12s
avec le même code sous ubuntu 9.04 et openoffice 3.0. ( même machine)
donc en conclusion si ton code met trop de temps je te conseille 2 choses :
1) simplifie les boucles et les actions
2) utilise la barre d'état pour savoir si ça tourne ou non.
regarde application.statusbar....
Met si tu veux écrire en c++ ... tu as mon autorisation ...mais tu n'en a pas besoin.
A+
A+
wida
Messages postés
150
Date d'inscription
lundi 5 novembre 2007
Statut
Membre
Dernière intervention
28 novembre 2011
17
23 juin 2009 à 14:25
23 juin 2009 à 14:25
Merci Bidouilleu_R pour ta réponse,
au fait, je voulai savoir si le VBA utilise une couche intermediair (entre le vba et l'assambleur) contrairement au c++ et ce qui cause ce retard la!
pour mes calculs je les ai simplifier le plus possible!!
la meilleur façon serai de les faire sous visual c++ mais j'arrive a comprendre toute les fonctions qu'il a dans mon excel.h ( je trouve pas les methodes qu'il me faut pour ouvrir un fichier excel, choisir telle feuille, telle colonne.. etc), ya trop de classe dont je connai pas l'utilité!!
please help!
au fait, je voulai savoir si le VBA utilise une couche intermediair (entre le vba et l'assambleur) contrairement au c++ et ce qui cause ce retard la!
pour mes calculs je les ai simplifier le plus possible!!
la meilleur façon serai de les faire sous visual c++ mais j'arrive a comprendre toute les fonctions qu'il a dans mon excel.h ( je trouve pas les methodes qu'il me faut pour ouvrir un fichier excel, choisir telle feuille, telle colonne.. etc), ya trop de classe dont je connai pas l'utilité!!
please help!
wida
Messages postés
150
Date d'inscription
lundi 5 novembre 2007
Statut
Membre
Dernière intervention
28 novembre 2011
17
23 juin 2009 à 15:22
23 juin 2009 à 15:22
c'est sur que je vais gagné du temps, mais je veux gagner le plus possible, en plus une utilsation du CPU a 100% pendant 10mn!!! c'est pas du tt performant, ça empeche d'autre processus de s'executer et même n'importe quel autre manipulation et ça risque aussi de tout planter avant de finir!!
pour l'essai, je l'ai fait, ça ne prend meme pas une seconde!
pour l'essai, je l'ai fait, ça ne prend meme pas une seconde!