Affichage d'un message pendant l'éxécution d'une Macro

bobbyMac Messages postés 7 Date d'inscription lundi 17 décembre 2001 Statut Membre Dernière intervention 10 mai 2002 - 21 déc. 2001 à 12:51
regard_d_hom Messages postés 1 Date d'inscription vendredi 2 avril 2004 Statut Membre Dernière intervention 2 avril 2004 - 2 avril 2004 à 16:59
Est-il possible en VBA Excel d'afficher un message pendant l'exécution d'une macro ??

exemple : Veuillez patienter, exécution de la macro en cours.

Merci d'avance.

5 réponses

cs_oliver68 Messages postés 117 Date d'inscription lundi 17 décembre 2001 Statut Membre Dernière intervention 10 mars 2003
21 déc. 2001 à 21:26
Salut,

Crée une FORM qui contient ce message d'attente. la 1ere macro affiche juste cette form ( form1.show par ex) et ton code complet tu le mets dans un SUB FORM1.LOAD() (ou équivalent en VBA Excel) , et quand c'est fini, form1.hide.
tu vois ce que je veux dire ?

Good luck.
0
bobbyMac Messages postés 7 Date d'inscription lundi 17 décembre 2001 Statut Membre Dernière intervention 10 mai 2002
24 déc. 2001 à 12:27
Voilà le code que j'écris

Sub msg()

Form1.Show

Dim x As Integer
x = 1

Do While Cells(x, "A") <> ""
Cells(x, "A").Select
x = x + 1
Loop

Form1.Hide

End Sub

Le seul problème c'est que ma fenêtre s'affiche et tant que je ne la ferme pas la boucle ne s'éxécute pas...... alors que je voudrais que la fenêtre soit apparente pendant l'exécution de la boucle derrière.
0
cs_oliver68 Messages postés 117 Date d'inscription lundi 17 décembre 2001 Statut Membre Dernière intervention 10 mars 2003
24 déc. 2001 à 13:26
fais plutôt :

sub msg()
form1.show
end sub

ton form1 comporte le zoli message de patience.

et tu rajoutes ton code au chargement de form1 :

sub form1_load()

ton code

form1.hide
end sub

Tu vois l'idée ?

@+
0
cs_oliver68 Messages postés 117 Date d'inscription lundi 17 décembre 2001 Statut Membre Dernière intervention 10 mars 2003
24 déc. 2001 à 13:27
fais plutôt :

sub msg()
form1.show
end sub

ton form1 comporte le zoli message de patience.

et tu rajoutes ton code au chargement de form1 :

sub form1_load()

ton code

form1.hide
end sub

Tu vois l'idée ?

@+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
regard_d_hom Messages postés 1 Date d'inscription vendredi 2 avril 2004 Statut Membre Dernière intervention 2 avril 2004
2 avril 2004 à 16:59
Extrait de l'aide VB Excel

Syntaxe

[object.]Show modal

La syntaxe de la méthode Show comprend les éléments suivants :

modal Valeur booléenne facultative qui détermine si l'objet UserForm est modal ou pas.

Valeurs

Les valeurs pour modal sont :

Constante Valeur Description
vbModal 1 UserForm est modal. Valeur par défaut.

vbModeless 0 UserForm n'est pas modal.

Remarques

Note Dans Microsoft Office 97, si un objet UserForm est défini de telle sorte qu'il s'affiche sans intervention de l'utilisateur (objet non modal), une erreur se produit au moment de l'exécution. Les objets UserForms d'Office 97 sont toujours de forme modale.

Lorsqu'un objet UserForm n'est pas modal, le code suivant est exécuté dès qu'il apparait. Les feuilles non modales n'apparaissent pas dans la barre des tâches et ne figurent pas dans l'ordre de l'onglet de la fenêtre.

Peut être un élément de réponse .... ;)
0
Rejoignez-nous