OVH Cloud OVH Cloud

Lenteur de fonctionnement, corrigée par suppression de la BO

6 réponses
Avatar
ManBas
Bonjour à tous

Hier je posais une question sur un formulaire qui ne se ferme pas suivi par
des effets "graphiques" lors du déplacement du formulaire (suggestions
fournies par Isabelle et Misange).
Aujourd'hui j'ai trouvé un "remède", en cherchant ce qui ralentissait +++ la
saisie lors de cases à cocher (apparition du sablier entre la "coche" et
l'apparition du texte sur la feuille !!!).
Mais ce remède ne peut pas convenir, voici pourquoi.

Lorsque je supprime ma BO établie selon le modele de Pascal Engelmajer
(actions privées-actions publiques) tout rentre dans l'ordre.
Cette BO est bien fournie: le code est-il parcouru à chaque changement de
valeur?
Il n'y a pas de bogue dénoncé par XL.
Que me suggerez-vous?
Voulez-vous voir le code?
Là je suis vraiment tres tres embete car ce travail est destiné à une
communauté professionnelle...
Mille merci d'avance

6 réponses

Avatar
MichDenis
Bonjour ManBas,

Dans ton code, juste avant la ligne de code qui copie dans une cellule de ta feuille, le texte, ajoute cette ligne de code :

application.enableevents= False
'Copie du texte dans ton tableur
application.enableevents= True



Salutations!



"ManBas" a écrit dans le message de news:
Bonjour à tous

Hier je posais une question sur un formulaire qui ne se ferme pas suivi par
des effets "graphiques" lors du déplacement du formulaire (suggestions
fournies par Isabelle et Misange).
Aujourd'hui j'ai trouvé un "remède", en cherchant ce qui ralentissait +++ la
saisie lors de cases à cocher (apparition du sablier entre la "coche" et
l'apparition du texte sur la feuille !!!).
Mais ce remède ne peut pas convenir, voici pourquoi.

Lorsque je supprime ma BO établie selon le modele de Pascal Engelmajer
(actions privées-actions publiques) tout rentre dans l'ordre.
Cette BO est bien fournie: le code est-il parcouru à chaque changement de
valeur?
Il n'y a pas de bogue dénoncé par XL.
Que me suggerez-vous?
Voulez-vous voir le code?
Là je suis vraiment tres tres embete car ce travail est destiné à une
communauté professionnelle...
Mille merci d'avance
Avatar
ManBas
Bonjour MichDenis,
Veux-tu dire que je dois le mettre avant tous les codes de tous les
controles de tous les formulaires? (des centaines! mais le fichier ne pèse
que 500Ko)
En fait c'est tout le tableur qui tourne lentement, y compris les mises en
forme avec l'introduction de formules dans les cellules.
Quel rapport avec la BO?

"MichDenis" a écrit dans le message de news:
%
Bonjour ManBas,

Dans ton code, juste avant la ligne de code qui copie dans une cellule de
ta feuille, le texte, ajoute cette ligne de code :

application.enableevents= False
'Copie du texte dans ton tableur
application.enableevents= True



Salutations!



"ManBas" a écrit dans le message de news:

Bonjour à tous

Hier je posais une question sur un formulaire qui ne se ferme pas suivi
par
des effets "graphiques" lors du déplacement du formulaire (suggestions
fournies par Isabelle et Misange).
Aujourd'hui j'ai trouvé un "remède", en cherchant ce qui ralentissait +++
la
saisie lors de cases à cocher (apparition du sablier entre la "coche" et
l'apparition du texte sur la feuille !!!).
Mais ce remède ne peut pas convenir, voici pourquoi.

Lorsque je supprime ma BO établie selon le modele de Pascal Engelmajer
(actions privées-actions publiques) tout rentre dans l'ordre.
Cette BO est bien fournie: le code est-il parcouru à chaque changement de
valeur?
Il n'y a pas de bogue dénoncé par XL.
Que me suggerez-vous?
Voulez-vous voir le code?
Là je suis vraiment tres tres embete car ce travail est destiné à une
communauté professionnelle...
Mille merci d'avance





Avatar
MichDenis
Bonjour ManBas,

Quand tu édites une cellule ou tu la sélectionnes, ceci déclenche les macros événementielles (à condition qu'elles soient présentes
dans ton application) et cela augmente dans certains cas, la durée du traitement du processus.... et dans des cas particuliers des
boucles infinies.

En conséquence, c'est seulement ces lignes auxquelles tu dois prêter une attention particulière ....

Une façon de voir comment ta macro s'exécute, tu l'exécutes pas à pas en utilisant la touche F8.

N.B. Ceci n'est qu'une suggestion. Je n'ai pas vu ton classeur !


Salutations!





"ManBas" a écrit dans le message de news:
Bonjour MichDenis,
Veux-tu dire que je dois le mettre avant tous les codes de tous les
controles de tous les formulaires? (des centaines! mais le fichier ne pèse
que 500Ko)
En fait c'est tout le tableur qui tourne lentement, y compris les mises en
forme avec l'introduction de formules dans les cellules.
Quel rapport avec la BO?

"MichDenis" a écrit dans le message de news:
%
Bonjour ManBas,

Dans ton code, juste avant la ligne de code qui copie dans une cellule de
ta feuille, le texte, ajoute cette ligne de code :

application.enableevents= False
'Copie du texte dans ton tableur
application.enableevents= True



Salutations!



"ManBas" a écrit dans le message de news:

Bonjour à tous

Hier je posais une question sur un formulaire qui ne se ferme pas suivi
par
des effets "graphiques" lors du déplacement du formulaire (suggestions
fournies par Isabelle et Misange).
Aujourd'hui j'ai trouvé un "remède", en cherchant ce qui ralentissait +++
la
saisie lors de cases à cocher (apparition du sablier entre la "coche" et
l'apparition du texte sur la feuille !!!).
Mais ce remède ne peut pas convenir, voici pourquoi.

Lorsque je supprime ma BO établie selon le modele de Pascal Engelmajer
(actions privées-actions publiques) tout rentre dans l'ordre.
Cette BO est bien fournie: le code est-il parcouru à chaque changement de
valeur?
Il n'y a pas de bogue dénoncé par XL.
Que me suggerez-vous?
Voulez-vous voir le code?
Là je suis vraiment tres tres embete car ce travail est destiné à une
communauté professionnelle...
Mille merci d'avance





Avatar
ManBas
Si je comprends bien c'est toutes les lignes qui vont écrire dans la
feuille.
Pfffiou! CtrlV va chauffer fort ( à l'exception des cas où la vision de la
cellule modifiée est renvoyée dans le même formulaire).
J'ose saisir la perche que tu me tends: veux-tu voir mon classeur?
(..........!!!)

"MichDenis" a écrit dans le message de news:

Bonjour ManBas,

Quand tu édites une cellule ou tu la sélectionnes, ceci déclenche les
macros événementielles (à condition qu'elles soient présentes
dans ton application) et cela augmente dans certains cas, la durée du
traitement du processus.... et dans des cas particuliers des
boucles infinies.

En conséquence, c'est seulement ces lignes auxquelles tu dois prêter une
attention particulière ....

Une façon de voir comment ta macro s'exécute, tu l'exécutes pas à pas en
utilisant la touche F8.

N.B. Ceci n'est qu'une suggestion. Je n'ai pas vu ton classeur !


Salutations!





"ManBas" a écrit dans le message de news:

Bonjour MichDenis,
Veux-tu dire que je dois le mettre avant tous les codes de tous les
controles de tous les formulaires? (des centaines! mais le fichier ne pèse
que 500Ko)
En fait c'est tout le tableur qui tourne lentement, y compris les mises en
forme avec l'introduction de formules dans les cellules.
Quel rapport avec la BO?

"MichDenis" a écrit dans le message de news:
%
Bonjour ManBas,

Dans ton code, juste avant la ligne de code qui copie dans une cellule de
ta feuille, le texte, ajoute cette ligne de code :

application.enableevents= False
'Copie du texte dans ton tableur
application.enableevents= True



Salutations!



"ManBas" a écrit dans le message de news:

Bonjour à tous

Hier je posais une question sur un formulaire qui ne se ferme pas suivi
par
des effets "graphiques" lors du déplacement du formulaire (suggestions
fournies par Isabelle et Misange).
Aujourd'hui j'ai trouvé un "remède", en cherchant ce qui ralentissait +++
la
saisie lors de cases à cocher (apparition du sablier entre la "coche" et
l'apparition du texte sur la feuille !!!).
Mais ce remède ne peut pas convenir, voici pourquoi.

Lorsque je supprime ma BO établie selon le modele de Pascal Engelmajer
(actions privées-actions publiques) tout rentre dans l'ordre.
Cette BO est bien fournie: le code est-il parcouru à chaque changement de
valeur?
Il n'y a pas de bogue dénoncé par XL.
Que me suggerez-vous?
Voulez-vous voir le code?
Là je suis vraiment tres tres embete car ce travail est destiné à une
communauté professionnelle...
Mille merci d'avance










Avatar
MichDenis
Tu peux m'envoyer ton classeur dans ma BAL.

La réponse : Fin de la journée , heure du Québec


Salutations!



"ManBas" a écrit dans le message de news: %
Si je comprends bien c'est toutes les lignes qui vont écrire dans la
feuille.
Pfffiou! CtrlV va chauffer fort ( à l'exception des cas où la vision de la
cellule modifiée est renvoyée dans le même formulaire).
J'ose saisir la perche que tu me tends: veux-tu voir mon classeur?
(..........!!!)

"MichDenis" a écrit dans le message de news:

Bonjour ManBas,

Quand tu édites une cellule ou tu la sélectionnes, ceci déclenche les
macros événementielles (à condition qu'elles soient présentes
dans ton application) et cela augmente dans certains cas, la durée du
traitement du processus.... et dans des cas particuliers des
boucles infinies.

En conséquence, c'est seulement ces lignes auxquelles tu dois prêter une
attention particulière ....

Une façon de voir comment ta macro s'exécute, tu l'exécutes pas à pas en
utilisant la touche F8.

N.B. Ceci n'est qu'une suggestion. Je n'ai pas vu ton classeur !


Salutations!





"ManBas" a écrit dans le message de news:

Bonjour MichDenis,
Veux-tu dire que je dois le mettre avant tous les codes de tous les
controles de tous les formulaires? (des centaines! mais le fichier ne pèse
que 500Ko)
En fait c'est tout le tableur qui tourne lentement, y compris les mises en
forme avec l'introduction de formules dans les cellules.
Quel rapport avec la BO?

"MichDenis" a écrit dans le message de news:
%
Bonjour ManBas,

Dans ton code, juste avant la ligne de code qui copie dans une cellule de
ta feuille, le texte, ajoute cette ligne de code :

application.enableevents= False
'Copie du texte dans ton tableur
application.enableevents= True



Salutations!



"ManBas" a écrit dans le message de news:

Bonjour à tous

Hier je posais une question sur un formulaire qui ne se ferme pas suivi
par
des effets "graphiques" lors du déplacement du formulaire (suggestions
fournies par Isabelle et Misange).
Aujourd'hui j'ai trouvé un "remède", en cherchant ce qui ralentissait +++
la
saisie lors de cases à cocher (apparition du sablier entre la "coche" et
l'apparition du texte sur la feuille !!!).
Mais ce remède ne peut pas convenir, voici pourquoi.

Lorsque je supprime ma BO établie selon le modele de Pascal Engelmajer
(actions privées-actions publiques) tout rentre dans l'ordre.
Cette BO est bien fournie: le code est-il parcouru à chaque changement de
valeur?
Il n'y a pas de bogue dénoncé par XL.
Que me suggerez-vous?
Voulez-vous voir le code?
Là je suis vraiment tres tres embete car ce travail est destiné à une
communauté professionnelle...
Mille merci d'avance










Avatar
Gaenonius
(...) suivi par
des effets "graphiques" lors du déplacement du formulaire


Ces effets sont probablement dûs à la désactivation du rafraichissement de
l'écran. Juste avant l'affichage du formulaire dont le déplacement produit cet
effet, il faut remettre le paramètre ScreenUpdating à True.

--
Gaenonius

Bonjour à tous

Hier je posais une question sur un formulaire qui ne se ferme pas suivi par
des effets "graphiques" lors du déplacement du formulaire (suggestions
fournies par Isabelle et Misange).
Aujourd'hui j'ai trouvé un "remède", en cherchant ce qui ralentissait +++ la
saisie lors de cases à cocher (apparition du sablier entre la "coche" et
l'apparition du texte sur la feuille !!!).
Mais ce remède ne peut pas convenir, voici pourquoi.

Lorsque je supprime ma BO établie selon le modele de Pascal Engelmajer
(actions privées-actions publiques) tout rentre dans l'ordre.
Cette BO est bien fournie: le code est-il parcouru à chaque changement de
valeur?
Il n'y a pas de bogue dénoncé par XL.
Que me suggerez-vous?
Voulez-vous voir le code?
Là je suis vraiment tres tres embete car ce travail est destiné à une
communauté professionnelle...
Mille merci d'avance