Problème affichage message pendant une macro

Alecks

XLDnaute Nouveau
Je fais afficher un userform pendant l'exécution d'une macro et je veux qu'elle disparaisse ensuite. J'ai cherché partout et trouver quelque chose, mais pendant que la macro s'exécute, mon userform est blanc et je ne vois que les bordures. J'ai essayé une astuce que j'ai trouvé ici je crois et ça ne fonctionne pas. S.V.P. des choses assez détaillée, je sais à peine c'est quoi un userform. Voici ma macro en entier

Sub Conversion_unique()
Application.ScreenUpdating = False

'macro
Application.Run ("Importer_texte")

UserForm1.Show vbModeless

'astuces qui ne fonctionne pas
UserForm1.Show False
DoEvents

'série de macro
Application.Run ("Extraire_info")
Application.Run ("Aller_a")
Application.Run ("Convertion_Delta")
Application.Run ("Ajout_de_variables")
Application.Run ("Exporter_fichier")

UserForm1.Hide

End Sub

merci
 

Etienne2323

XLDnaute Impliqué
Re : Problème affichage message pendant une macro

Salut Alecks,
tout d'abord, bienvenu sur le forum. À l'avenir, un petit bonjour serait toujours apprécié ;) . Pour ce qui est de votre problème, vous pouvez essayer quelque chose comme ceci.

Code:
Sub Conversion_unique()

Application.ScreenUpdating = False

Application.Run ("Importer_texte")

With UserForm1
    .Show vbModeless
    .Repaint
    .MousePointer = fmMousePointerHourGlass
End With

Application.Run ("Extraire_info")
Application.Run ("Aller_a")
Application.Run ("Convertion_Delta")
Application.Run ("Ajout_de_variables")
Application.Run ("Exporter_fichier")

Unload UserForm1
UserForm1.Hide

End Sub

En espérant que ça puisse vous aider !

Bonne fin de soirée !

Cordialement,

Étienne
 

atlas

XLDnaute Occasionnel
Re : Problème affichage message pendant une macro

Question bête as-tu au moins construit quelque chose dans ton userform
Ex ajoute graphiquement un bouton ou un editbox dans ton userform .(il faut juste glisser déposer c'est du graphique et sans une ligne de code trouves la barres d'outils qui fait ça dans ton éditeur de code VBA) .

Si tu n'as rien dessiner dans ton userform et bien c'et normal que tu ne vois que les bordures ...


Tu peux tester les ligne de codes suivantes

UserForm1.load
......

UserForm1.Unload
 

Etienne2323

XLDnaute Impliqué
Re : Problème affichage message pendant une macro

Salut atlas,
lorsqu'on roule un userform "d'attente" et que l'on veut faire rouler autre chose en même temps, afin d'éviter que le userform soit blanc en entier (aucun bouton, listes, textes ... tout est blanc), il faut utiliser la ligne .Repaint
C'est elle qui permet de retrouver ce qu'on a dans notre form. Sinon, malgré tout les efforts, le form sera toujours blanc.

Bonne soirée !

Étienne
 

Alecks

XLDnaute Nouveau
Re : Problème affichage message pendant une macro

Salut Alecks,
tout d'abord, bienvenu sur le forum. À l'avenir, un petit bonjour serait toujours apprécié ;) . Pour ce qui est de votre problème, vous pouvez essayer quelque chose comme ceci.

Code:
Sub Conversion_unique()

Application.ScreenUpdating = False

Application.Run ("Importer_texte")

With UserForm1
    .Show vbModeless
    .Repaint
    .MousePointer = fmMousePointerHourGlass
End With

Application.Run ("Extraire_info")
Application.Run ("Aller_a")
Application.Run ("Convertion_Delta")
Application.Run ("Ajout_de_variables")
Application.Run ("Exporter_fichier")

Unload UserForm1
UserForm1.Hide

End Sub

En espérant que ça puisse vous aider !

Bonne fin de soirée !

Cordialement,

Étienne


Bonjour tout le monde!
Désolé pour les salutations tout à l'heure, j'étais pressé parce que je viens de perdre près d'une heure là-dessus et j'ai pris du retard à mon travail.

Merci Étienne, ton code fonctionne parfaitement!
Merci aux autres pour l'effort;)
 

Alecks

XLDnaute Nouveau
Re : Problème affichage message pendant une macro

Bonjour tout le monde,
Toujours avec les mêmes macros, serait-ce possible de pouvoir afficher le temps restants avant la fin de la macro?

C'est juste un petit luxe comme ça, si ça fonctionne pas, c'est pas très grave.

Merci
 

Etienne2323

XLDnaute Impliqué
Re : Problème affichage message pendant une macro

Salut Alecks,
c'est certain que c'est possible. De ce que je connais, il y a l'option du timer ou encore de la progressbar, mais à ce stade, je dois passer le relais. Ça sort de mon champ de compétences ;) Vous pouvez toujours faire des recherches en ce qui concerne les progressbar sur ce forum, de nombreux exemples pour les construire.

Au plaisir de vous relire,

Étienne
 

jeanpierre

Nous a quitté
Repose en paix
Re : Problème affichage message pendant une macro

Bonjour Alecks, Etienne2323,

Comme tu dis, "un petit luxe", seulement deux problèmes :

Si macro est linéaire, c'est possible, mais de ce que j'ai lu, appel de plusieurs routines, cela ne va pas être coton à gérer, voire impossible (permier point).

Le second, comme tout luxe, cela coûte cher, et en temps et en mémoire ce qui n'est pas toujours le but recherché. Si c'est pour ton utilisation et ta satisfaction personnelle, c'est sans doute possible, mais si c'est pour une utilisation plus large, tes collègues par exemple, vont vite pester et risquent de devenir accro de la pause café, pendant que le pc divague....

Donc, à voir tout cela.

Jean-Pierre
 

Alecks

XLDnaute Nouveau
Re : Problème affichage message pendant une macro

Je crois que je vais en rester à ce que j'ai parce que ma macro dure déjà 15 à 30 secondes multiplier par un nombre pouvant être élevé de fichier présent dans un dossier.

Ils viendront voir leur écran de temps en temps pour voir si le message de loading est disparu!

Merci quand même J-P:)
 

Statistiques des forums

Discussions
312 691
Messages
2 090 992
Membres
104 721
dernier inscrit
Hmidou