Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

lancer macro après affichage userform

  • Initiateur de la discussion Initiateur de la discussion mutzik
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

mutzik

XLDnaute Barbatruc
Bonjour à toutes et tous,

2 jours que je cherche, ici et ailleurs ...
tout est dans le titre, après que mon userform soit affiché, je voudrais qu'une macro se déclenche automatiquement

j'ai essayé dans le activate, mais la macro s'execute avant l'affichage et je souhaiterai l'inverse, ceci pour expliquer à l'utilisateur ce qui se passe et le faire patienter

Merci à vous
 
bonjour le fil
je partage l'avis de marcel32, toute la question tourne autour de la disparition de l'userform dans la procédure, ce qui ne devrais pas être le cas avec le activate.
la temporisation n'a de raison que de laisser le temps (citation de mutzik ceci pour expliquer à l'utilisateur ce qui se passe et le faire patienter ), mais la question où est l'userform ?
et là je n'ai pas de réponse
cordialement
galougalou
 
re
@mapomme le msgbox s'affiche avant uf1 et if2
cela dit perso ça me gêne pas 2007 j'ai pas de latence mémoire pour le repaint comme sur 2016 et un peu moins 2013 mais pour ce qui sont sur ces versions ça peut troubler le repaint si la macro est lourde

une autre solution que j'applique moi même sur 2013 a cause de cette latence justement
c'est transformer la sub en fonction même si elle est lourde et
Private Sub UserForm_Activate()
dim x
x=mafonctionexterne
End Sub

ainsi l’événement n'est pas relâché tant que x n'a pas sa réponse 😉
 
De plus, il me semble que ça lance la macro avant d'afficher le formulaire alors que la demande était de lancer la macro après l'affichage du formulaire.
C'est curieux car chez moi sur Excel 2019 la MsgBox apparaît sur l'UserForm après son affichage.

Fichier joint, si ça ne va pas chez vous essayez en non modal avec UserForm1.Show 0

Salut mapomme, toi aussi c'est après, quelle est ta version ?
 

Pièces jointes

Dernière édition:
C'est curieux car chez moi sur Excel 2019 la MsgBox apparaît sur l'UserForm après son affichage.
Je n'ai pas dit le contraire. D'autant que je n'avais pas testé.

Je ne faisais que demander :
- des explications sur le fonctionnement de la chose,
- la différence par rapport à un appel à la macro après l'ouverture du UserForm comme cela se fait normalement, dans le Activate.
 
1° je lance l'usf
2° le userform commence a s'afficher
3° le msgbox aussi DEVANT!!! le usf
4° le msgbox est affiché le userform pas encore fini
5° les deux sont affichés

Sub USF()
Application.OnTime 1, "MaMacro"'ce qui revient a le lancer avant l'userform
UserForm1.Show
End Sub

Sub MaMacro()
MsgBox "Bonjour"
End Sub
 
une autre solution que j'applique moi même sur 2013 a cause de cette latence justement
c'est transformer la sub en fonction même si elle est lourde et
Private Sub UserForm_Activate()
dim x
x=mafonctionexterne
End Sub

il me semble, a long time ago, que j'avais voulu remplacer une certaine Sub par une Function. J'avais échoué car certaines actions ou interactions avec Excel sont interdites dans une function. Mais pas moyen de me souvenir de ce que c'était.
 
ne pas oublier que pour nos demo la sub envoie un msgbox mais dans l’éventualité de travail en boucle et meme a l'oeil nu on voit bien le décalage en terme de temps
j'ai testé un travail sur cells bien pourri est lourd et l'userform reste tous gris est vide jusqu’à la fin de la macro avec le model de job75
avec mon model dans le activate pas de soucis
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
456
Réponses
2
Affichages
556
  • Question Question
Microsoft 365 VBS / Macro
Réponses
3
Affichages
1 K
Réponses
9
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…