Voici un petit problème dont je n'arrive pas à trouver une explication:
J' ai une macro qui fonctionne sur le schéma suivant:
- tant que cellule(lig,1) <> "_"
- si cellule(lig, 1) = 0
- Masquer ligne(lig)
- fin boucle
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au
lancement suivant, elle met un temps plus long (7 x plus long) puis ce
temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ? J'ai déjà essayé de mettre un [End] avant la
fin de la procédure, rien n'y fait.
Je précise que je travaille avec:
-Pentium III 256 Mo RAM (j'avoue, c'est pas très récent)
- XP pro
- Excel 2003
Bonjour Je ne comprends pas les deux conditions: tant que, puis un si..; If [A1] = 0 then masquer ligne 1 Cela ne devrait prendre que quelques millisecondes. N'y a-t-il pas d'autres calculs qui se feraient via la macro?
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "denis" a écrit dans le message de groupe de discussion : 4efc4277$0$2531$
Bonjour,
Voici un petit problème dont je n'arrive pas à trouver une explication: J' ai une macro qui fonctionne sur le schéma suivant: - tant que cellule(lig,1) <> "_" - si cellule(lig, 1) = 0 - Masquer ligne(lig) - fin boucle
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au lancement suivant, elle met un temps plus long (7 x plus long) puis ce temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ? J'ai déjà essayé de mettre un [End] avant la fin de la procédure, rien n'y fait.
Je précise que je travaille avec: -Pentium III 256 Mo RAM (j'avoue, c'est pas très récent) - XP pro - Excel 2003
Par avance merci
Bonjour
Je ne comprends pas les deux conditions: tant que, puis un si..;
If [A1] = 0
then masquer ligne 1
Cela ne devrait prendre que quelques millisecondes.
N'y a-t-il pas d'autres calculs qui se feraient via la macro?
Jacquouille
" Le vin est au repas ce que le parfum est à la femme."
"denis" a écrit dans le message de groupe de discussion :
4efc4277$0$2531$ba4acef3@reader.news.orange.fr...
Bonjour,
Voici un petit problème dont je n'arrive pas à trouver une explication:
J' ai une macro qui fonctionne sur le schéma suivant:
- tant que cellule(lig,1) <> "_"
- si cellule(lig, 1) = 0
- Masquer ligne(lig)
- fin boucle
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au
lancement suivant, elle met un temps plus long (7 x plus long) puis ce
temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ? J'ai déjà essayé de mettre un [End] avant la
fin de la procédure, rien n'y fait.
Je précise que je travaille avec:
-Pentium III 256 Mo RAM (j'avoue, c'est pas très récent)
- XP pro
- Excel 2003
Bonjour Je ne comprends pas les deux conditions: tant que, puis un si..; If [A1] = 0 then masquer ligne 1 Cela ne devrait prendre que quelques millisecondes. N'y a-t-il pas d'autres calculs qui se feraient via la macro?
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "denis" a écrit dans le message de groupe de discussion : 4efc4277$0$2531$
Bonjour,
Voici un petit problème dont je n'arrive pas à trouver une explication: J' ai une macro qui fonctionne sur le schéma suivant: - tant que cellule(lig,1) <> "_" - si cellule(lig, 1) = 0 - Masquer ligne(lig) - fin boucle
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au lancement suivant, elle met un temps plus long (7 x plus long) puis ce temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ? J'ai déjà essayé de mettre un [End] avant la fin de la procédure, rien n'y fait.
Je précise que je travaille avec: -Pentium III 256 Mo RAM (j'avoue, c'est pas très récent) - XP pro - Excel 2003
Par avance merci
h2so4
denis was thinking very hard : bonjour,
as-tu essayé Application.screenupdatingúlse 'empêche le refraichissement d'écran Application.Calculation = xlCalculationManual 'empêche le recalcul automatique Application.EnableEvents = False 'empêche le déclenchement d'une macro sur base d'un event
- tant que cellule(lig,1) <> "_" - si cellule(lig, 1) = 0 - Masquer ligne(lig) - fin boucle
Voici un petit problème dont je n'arrive pas à trouver une explication: J' ai une macro qui fonctionne sur le schéma suivant: - tant que cellule(lig,1) <> "_" - si cellule(lig, 1) = 0 - Masquer ligne(lig) - fin boucle
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au lancement suivant, elle met un temps plus long (7 x plus long) puis ce temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ? J'ai déjà essayé de mettre un [End] avant la fin de la procédure, rien n'y fait.
Je précise que je travaille avec: -Pentium III 256 Mo RAM (j'avoue, c'est pas très récent) - XP pro - Excel 2003
Par avance merci
-- h2so4 ca PAN pique DORA .
denis was thinking very hard :
bonjour,
as-tu essayé
Application.screenupdatingúlse
'empêche le refraichissement d'écran
Application.Calculation = xlCalculationManual
'empêche le recalcul automatique
Application.EnableEvents = False
'empêche le déclenchement d'une macro sur base d'un event
- tant que cellule(lig,1) <> "_"
- si cellule(lig, 1) = 0
- Masquer ligne(lig)
- fin boucle
Voici un petit problème dont je n'arrive pas à trouver une explication:
J' ai une macro qui fonctionne sur le schéma suivant:
- tant que cellule(lig,1) <> "_"
- si cellule(lig, 1) = 0
- Masquer ligne(lig)
- fin boucle
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au
lancement suivant, elle met un temps plus long (7 x plus long) puis ce
temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ? J'ai déjà essayé de mettre un [End] avant la
fin de la procédure, rien n'y fait.
Je précise que je travaille avec:
-Pentium III 256 Mo RAM (j'avoue, c'est pas très récent)
- XP pro
- Excel 2003
as-tu essayé Application.screenupdatingúlse 'empêche le refraichissement d'écran Application.Calculation = xlCalculationManual 'empêche le recalcul automatique Application.EnableEvents = False 'empêche le déclenchement d'une macro sur base d'un event
- tant que cellule(lig,1) <> "_" - si cellule(lig, 1) = 0 - Masquer ligne(lig) - fin boucle
Voici un petit problème dont je n'arrive pas à trouver une explication: J' ai une macro qui fonctionne sur le schéma suivant: - tant que cellule(lig,1) <> "_" - si cellule(lig, 1) = 0 - Masquer ligne(lig) - fin boucle
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au lancement suivant, elle met un temps plus long (7 x plus long) puis ce temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ? J'ai déjà essayé de mettre un [End] avant la fin de la procédure, rien n'y fait.
Je précise que je travaille avec: -Pentium III 256 Mo RAM (j'avoue, c'est pas très récent) - XP pro - Excel 2003
Par avance merci
-- h2so4 ca PAN pique DORA .
Denis Fossioz
Bonjour,
Tout d'abord merci d'avoir répondu.
Et comme un exemple est plus parlant, voici un lien:
En fait, mon interrogation porte plus sur le fait du pourquoi le temps d'exécution de la macro augmente avec le nombre de fois où je l'appelle.
Mais si vous me donnez un coup de pouce pour encore l'améliorer, ce serait la cerise...
Au plaisir de vous lire.
Denis.
"Jacquouille" a écrit dans le message de news: 4efc498b$0$5045$
Bonjour Je ne comprends pas les deux conditions: tant que, puis un si..; If [A1] = 0 then masquer ligne 1 Cela ne devrait prendre que quelques millisecondes. N'y a-t-il pas d'autres calculs qui se feraient via la macro?
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "denis" a écrit dans le message de groupe de discussion : 4efc4277$0$2531$
Bonjour,
Tout d'abord merci d'avoir répondu.
Et comme un exemple est plus parlant, voici un lien:
http://cjoint.com/?ALDplEC31CP
En fait, mon interrogation porte plus sur le fait du pourquoi le temps
d'exécution de la macro augmente avec le nombre de fois où je l'appelle.
Mais si vous me donnez un coup de pouce pour encore l'améliorer, ce serait
la cerise...
Au plaisir de vous lire.
Denis.
"Jacquouille" <j.thiernesse@skynet.be> a écrit dans le message de news:
4efc498b$0$5045$ba620e4c@news.skynet.be...
Bonjour
Je ne comprends pas les deux conditions: tant que, puis un si..;
If [A1] = 0
then masquer ligne 1
Cela ne devrait prendre que quelques millisecondes.
N'y a-t-il pas d'autres calculs qui se feraient via la macro?
Jacquouille
" Le vin est au repas ce que le parfum est à la femme."
"denis" a écrit dans le message de groupe de discussion :
4efc4277$0$2531$ba4acef3@reader.news.orange.fr...
En fait, mon interrogation porte plus sur le fait du pourquoi le temps d'exécution de la macro augmente avec le nombre de fois où je l'appelle.
Mais si vous me donnez un coup de pouce pour encore l'améliorer, ce serait la cerise...
Au plaisir de vous lire.
Denis.
"Jacquouille" a écrit dans le message de news: 4efc498b$0$5045$
Bonjour Je ne comprends pas les deux conditions: tant que, puis un si..; If [A1] = 0 then masquer ligne 1 Cela ne devrait prendre que quelques millisecondes. N'y a-t-il pas d'autres calculs qui se feraient via la macro?
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "denis" a écrit dans le message de groupe de discussion : 4efc4277$0$2531$
denis
Bonjour,
Merci également de vous être penché sur mon petit problème. Je vous joint également le fichier test: http://cjoint.com/?ALDplEC31CP
Pour répondre à vos questions:
as-tu essayé Application.screenupdatingúlse 'empêche le refraichissement d'écran
----> oui, je l'avais fait (et c'est vrai que j'obtiens une division par 2 du temps de traitement.
Application.Calculation = xlCalculationManual 'empêche le recalcul automatique
---> ça...
Application.EnableEvents = False 'empêche le déclenchement d'une macro sur base d'un event
---> ...et ça, non, je pensais que ça n'influencerait pas le temps mais je vais essayer de suite !
- tant que cellule(lig,1) <> "_" - si cellule(lig, 1) = 0 - Masquer ligne(lig) - fin boucle
(Il faut utiliser le bouton [Aperçu] pour le test de la macro).
A vos questions:
as-tu essayé
Application.screenupdatingúlse ---> ça oui, je l'avais fais (et c'est vrai que le temps d'exécution est divisé par 2) 'empêche le refraichissement d'écran Application.Calculation xlCalculationManual 'empêche le recalcul automatique Application.EnableEvents = False 'empêche le déclenchement d'une macro sur base d'un event ---> ces 2 lignes là, non, je ne connais pas (je débute...)
Tout d'abord, merci de vous pencher sur mon problème.
Je vous joint également mon fichier test:
http://cjoint.com/?ALDplEC31CP
(Il faut utiliser le bouton [Aperçu] pour le test de la macro).
A vos questions:
as-tu essayé
Application.screenupdatingúlse
---> ça oui, je l'avais fais (et c'est vrai que le temps d'exécution est divisé par 2)
'empêche le refraichissement d'écran Application.Calculation
xlCalculationManual 'empêche le recalcul automatique
Application.EnableEvents = False
'empêche le déclenchement d'une macro sur base d'un event
---> ces 2 lignes là, non, je ne connais pas (je débute...)
(Il faut utiliser le bouton [Aperçu] pour le test de la macro).
A vos questions:
as-tu essayé
Application.screenupdatingúlse ---> ça oui, je l'avais fais (et c'est vrai que le temps d'exécution est divisé par 2) 'empêche le refraichissement d'écran Application.Calculation xlCalculationManual 'empêche le recalcul automatique Application.EnableEvents = False 'empêche le déclenchement d'une macro sur base d'un event ---> ces 2 lignes là, non, je ne connais pas (je débute...)
"denis" a écrit Voici un petit problème dont je n'arrive pas à trouver une explication:
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au lancement suivant, elle met un temps plus long (7 x plus long) puis ce temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ?
;o))) utiliser les affichages personnalisés (gestionnaire de vues) j'ai créé un affichage a l'aide d'un filtre correspondant a besoin <>0 j'ai nommé cette "vue" : BESOINS le bouton sert a activer cette vue via la macro1 l'affichage a lieu en moins d'une seconde http://cjoint.com/?ALDqmxLp6Hm
Bonsour®
"denis" a écrit
Voici un petit problème dont je n'arrive pas à trouver une explication:
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au
lancement suivant, elle met un temps plus long (7 x plus long) puis ce
temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ?
;o)))
utiliser les affichages personnalisés (gestionnaire de vues)
j'ai créé un affichage a l'aide d'un filtre correspondant a besoin <>0
j'ai nommé cette "vue" : BESOINS
le bouton sert a activer cette vue via la macro1
l'affichage a lieu en moins d'une seconde
http://cjoint.com/?ALDqmxLp6Hm
"denis" a écrit Voici un petit problème dont je n'arrive pas à trouver une explication:
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au lancement suivant, elle met un temps plus long (7 x plus long) puis ce temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ?
;o))) utiliser les affichages personnalisés (gestionnaire de vues) j'ai créé un affichage a l'aide d'un filtre correspondant a besoin <>0 j'ai nommé cette "vue" : BESOINS le bouton sert a activer cette vue via la macro1 l'affichage a lieu en moins d'une seconde http://cjoint.com/?ALDqmxLp6Hm
Jacquouille
Re j'en reviens toujours à la double condition?????
Je propose de commencer par le bas, ce qui évite des problèmes si deux lignes qui se suivent remplissent la condition.
For i=[B65536].End(3).row to 9 step -1 If range("A"&i).value = 0 Then Rows(i).Hidden = True end if next
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "Denis Fossioz" a écrit dans le message de groupe de discussion : 4efc7925$0$5706$
Bonjour,
Tout d'abord merci d'avoir répondu.
Et comme un exemple est plus parlant, voici un lien:
En fait, mon interrogation porte plus sur le fait du pourquoi le temps d'exécution de la macro augmente avec le nombre de fois où je l'appelle.
Mais si vous me donnez un coup de pouce pour encore l'améliorer, ce serait la cerise...
Au plaisir de vous lire.
Denis.
"Jacquouille" a écrit dans le message de news: 4efc498b$0$5045$
Bonjour Je ne comprends pas les deux conditions: tant que, puis un si..; If [A1] = 0 then masquer ligne 1 Cela ne devrait prendre que quelques millisecondes. N'y a-t-il pas d'autres calculs qui se feraient via la macro?
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "denis" a écrit dans le message de groupe de discussion : 4efc4277$0$2531$
Re
j'en reviens toujours à la double condition?????
Je propose de commencer par le bas, ce qui évite des problèmes si deux
lignes qui se suivent remplissent la condition.
For i=[B65536].End(3).row to 9 step -1
If range("A"&i).value = 0 Then
Rows(i).Hidden = True
end if
next
Jacquouille
" Le vin est au repas ce que le parfum est à la femme."
"Denis Fossioz" a écrit dans le message de groupe de discussion :
4efc7925$0$5706$ba4acef3@reader.news.orange.fr...
Bonjour,
Tout d'abord merci d'avoir répondu.
Et comme un exemple est plus parlant, voici un lien:
http://cjoint.com/?ALDplEC31CP
En fait, mon interrogation porte plus sur le fait du pourquoi le temps
d'exécution de la macro augmente avec le nombre de fois où je l'appelle.
Mais si vous me donnez un coup de pouce pour encore l'améliorer, ce serait
la cerise...
Au plaisir de vous lire.
Denis.
"Jacquouille" <j.thiernesse@skynet.be> a écrit dans le message de news:
4efc498b$0$5045$ba620e4c@news.skynet.be...
Bonjour
Je ne comprends pas les deux conditions: tant que, puis un si..;
If [A1] = 0
then masquer ligne 1
Cela ne devrait prendre que quelques millisecondes.
N'y a-t-il pas d'autres calculs qui se feraient via la macro?
Jacquouille
" Le vin est au repas ce que le parfum est à la femme."
"denis" a écrit dans le message de groupe de discussion :
4efc4277$0$2531$ba4acef3@reader.news.orange.fr...
En fait, mon interrogation porte plus sur le fait du pourquoi le temps d'exécution de la macro augmente avec le nombre de fois où je l'appelle.
Mais si vous me donnez un coup de pouce pour encore l'améliorer, ce serait la cerise...
Au plaisir de vous lire.
Denis.
"Jacquouille" a écrit dans le message de news: 4efc498b$0$5045$
Bonjour Je ne comprends pas les deux conditions: tant que, puis un si..; If [A1] = 0 then masquer ligne 1 Cela ne devrait prendre que quelques millisecondes. N'y a-t-il pas d'autres calculs qui se feraient via la macro?
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "denis" a écrit dans le message de groupe de discussion : 4efc4277$0$2531$
Jacquouille
Re Et un simple filtre appliqué sur la colonne A ... ? --> masquerait toutes les lignes dont A=0 ...
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "denis" a écrit dans le message de groupe de discussion : 4efc4277$0$2531$
Bonjour,
Voici un petit problème dont je n'arrive pas à trouver une explication: J' ai une macro qui fonctionne sur le schéma suivant: - tant que cellule(lig,1) <> "_" - si cellule(lig, 1) = 0 - Masquer ligne(lig) - fin boucle
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au lancement suivant, elle met un temps plus long (7 x plus long) puis ce temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ? J'ai déjà essayé de mettre un [End] avant la fin de la procédure, rien n'y fait.
Je précise que je travaille avec: -Pentium III 256 Mo RAM (j'avoue, c'est pas très récent) - XP pro - Excel 2003
Par avance merci
Re
Et un simple filtre appliqué sur la colonne A ... ? --> masquerait toutes
les lignes dont A=0 ...
Jacquouille
" Le vin est au repas ce que le parfum est à la femme."
"denis" a écrit dans le message de groupe de discussion :
4efc4277$0$2531$ba4acef3@reader.news.orange.fr...
Bonjour,
Voici un petit problème dont je n'arrive pas à trouver une explication:
J' ai une macro qui fonctionne sur le schéma suivant:
- tant que cellule(lig,1) <> "_"
- si cellule(lig, 1) = 0
- Masquer ligne(lig)
- fin boucle
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au
lancement suivant, elle met un temps plus long (7 x plus long) puis ce
temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ? J'ai déjà essayé de mettre un [End] avant la
fin de la procédure, rien n'y fait.
Je précise que je travaille avec:
-Pentium III 256 Mo RAM (j'avoue, c'est pas très récent)
- XP pro
- Excel 2003
Re Et un simple filtre appliqué sur la colonne A ... ? --> masquerait toutes les lignes dont A=0 ...
Jacquouille
" Le vin est au repas ce que le parfum est à la femme." "denis" a écrit dans le message de groupe de discussion : 4efc4277$0$2531$
Bonjour,
Voici un petit problème dont je n'arrive pas à trouver une explication: J' ai une macro qui fonctionne sur le schéma suivant: - tant que cellule(lig,1) <> "_" - si cellule(lig, 1) = 0 - Masquer ligne(lig) - fin boucle
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au lancement suivant, elle met un temps plus long (7 x plus long) puis ce temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ? J'ai déjà essayé de mettre un [End] avant la fin de la procédure, rien n'y fait.
Je précise que je travaille avec: -Pentium III 256 Mo RAM (j'avoue, c'est pas très récent) - XP pro - Excel 2003
MichD ------------------------------------------ "denis" a écrit dans le message de groupe de discussion : 4efc4277$0$2531$
Bonjour,
Voici un petit problème dont je n'arrive pas à trouver une explication: J' ai une macro qui fonctionne sur le schéma suivant: - tant que cellule(lig,1) <> "_" - si cellule(lig, 1) = 0 - Masquer ligne(lig) - fin boucle
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au lancement suivant, elle met un temps plus long (7 x plus long) puis ce temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ? J'ai déjà essayé de mettre un [End] avant la fin de la procédure, rien n'y fait.
Je précise que je travaille avec: -Pentium III 256 Mo RAM (j'avoue, c'est pas très récent) - XP pro - Excel 2003
Par avance merci
Bonjour,
Regarde le fichier joint : http://cjoint.com/?ALDq2VMMc8W
MichD
------------------------------------------
"denis" a écrit dans le message de groupe de discussion : 4efc4277$0$2531$ba4acef3@reader.news.orange.fr...
Bonjour,
Voici un petit problème dont je n'arrive pas à trouver une explication:
J' ai une macro qui fonctionne sur le schéma suivant:
- tant que cellule(lig,1) <> "_"
- si cellule(lig, 1) = 0
- Masquer ligne(lig)
- fin boucle
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au
lancement suivant, elle met un temps plus long (7 x plus long) puis ce
temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ? J'ai déjà essayé de mettre un [End] avant la
fin de la procédure, rien n'y fait.
Je précise que je travaille avec:
-Pentium III 256 Mo RAM (j'avoue, c'est pas très récent)
- XP pro
- Excel 2003
MichD ------------------------------------------ "denis" a écrit dans le message de groupe de discussion : 4efc4277$0$2531$
Bonjour,
Voici un petit problème dont je n'arrive pas à trouver une explication: J' ai une macro qui fonctionne sur le schéma suivant: - tant que cellule(lig,1) <> "_" - si cellule(lig, 1) = 0 - Masquer ligne(lig) - fin boucle
Au premier lancement, elle met un temps (7 sec), le problème vient qu'au lancement suivant, elle met un temps plus long (7 x plus long) puis ce temps augmente plus légèrement après d'autres appels.
Est-ce un problème normal ? J'ai déjà essayé de mettre un [End] avant la fin de la procédure, rien n'y fait.
Je précise que je travaille avec: -Pentium III 256 Mo RAM (j'avoue, c'est pas très récent) - XP pro - Excel 2003