La boîte de dialogue des messages Msgbox, Excel VBA

La fonction MsgBox est l’une des fonctions VBA les plus utiles. De nombreux exemples de ce chapitre utilisent cette fonction pour afficher la valeur d’une variable.
Cette fonction est souvent un bon substitut à une simple boîte de dialogue personnalisée. C’est également un excellent outil de débogage, car vous pouvez insérer des fonctions MsgBox à tout moment pour suspendre votre code et afficher le résultat d’un calcul ou d’une affectation.
La plupart des fonctions renvoient une valeur unique, que vous affectez à une variable. La fonction MsgBox renvoie non seulement une valeur, mais affiche également une boîte de dialogue à laquelle l’utilisateur peut répondre. La valeur renvoyée par la fonction MsgBox représente la réponse de l’utilisateur à la boîte de dialogue. Vous pouvez utiliser la fonction MsgBox même si vous ne vous intéressez pas à la réponse de l’utilisateur mais que vous souhaitez profiter de l’affichage du message.
La syntaxe de la fonction MsgBox a cinq arguments (ceux entre crochets sont optionnel):

= MsgBox(prompt[, buttons][, title][, helpfile, context])
■ prompt: C’est un argument obligatoire pour la fonction MsgBox qui spécifie le texte affiché dans la boîte de message. prompt est un argument String, ce qui signifie que vous devez taper le texte de votre choix; il peut contenir jusqu’à 1023 caractères, bien que ce soit généralement une bonne idée d’être plus concis que cela. (Toute prompt de plus de 1023 caractères est tronquée à 1023 caractères sans avertissement.)

■ butons: C’est un argument facultatif qui contrôle le type de boîte de message que VBA affiche en spécifiant les boutons qu’il contient. Par exemple, comme vous le verrez dans quelques pages, vous pouvez afficher une boîte de message avec juste un bouton OK; avec les boutons OK et Annuler; avec les boutons Abandonner, Réessayer et Ignorer; etc. Vous pouvez également ajouter des arguments à l’argument des boutons qui contrôlent l’icône dans la boîte de message et la modalité de la boîte de message.
■ title: C’est un argument facultatif qui contrôle la barre de titre de la boîte de message. Si vous ne spécifiez pas de titre, VBA utilise le titre de l’application: Microsoft Excel. En général, il est préférable de spécifier le titre car le nom de l’application en lui-même n’est pas utile.
■ helpfile: C’est un argument facultatif qui contrôle le fichier d’aide que VBA affiche lorsque l’utilisateur appuie sur F1 dans la boîte de message pour obtenir de l’aide (ou clique sur le bouton Aide dans une boîte de message contenant un bouton Aide).
■ context: C’est un argument facultatif qui contrôle la rubrique du fichier d’aide vers laquelle VBA accède. Si vous spécifiez l’argument du fichier d’aide, vous devez également spécifier l’argument de contexte.

Exemple de message standard de la boite de dialogue Msgbox

Les différentes possibilités pour le second argument de MsgBox

Paramètres
Constante Valeur Description
vbOKOnly 0 Affiche le boutonOK uniquement.
vbOKCancel 1 Affiche les boutons OK et Annuler.
vbAbortRetryIgnore 2 Affiche les boutonsAbandonnerRéessayer, et Ignorer.
vbYesNoCancel 3 Affiche les boutons OuiNon et Annuler.
vbYesNo 4 Affiche les boutons Oui et Non.
vbRetryCancel 5 Affiche les boutons Réessayer et Annuler.
vbCritical 16 Affiche l’icôneMessage critique.
vbQuestion 32 Affiche l’icôneRequête d’avertissement.
vbExclamation 48 Affiche l’icôneMessage d’avertissement.
vbInformation 64 Affiche l’icôneMessage d’information.
vbDefaultButton1 0 Le premier bouton est le bouton par défaut.
vbDefaultButton2 256 Le deuxième bouton est le bouton par défaut.
vbDefaultButton3 512 Le troisième bouton est le bouton par défaut.
vbDefaultButton4 768 Le quatrième bouton est le bouton par défaut.
vbApplicationModal 0 Boîte de dialogue modale. L’utilisateur doit répondre au message affiché dans la zone de message avant de pouvoir continuer de travailler dans l’application actuelle.
vbSystemModal 4 096 Modal système. Toutes les applications sont interrompues jusqu’à ce que l’utilisateur réponde au message affiché dans la zone de message.
vbMsgBoxHelpButton 16384 Ajoute le boutonAide à la zone de message.
vbMsgBoxSetForeground 65536 Indique la fenêtre de zone de message comme fenêtre de premier plan.
vbMsgBoxRight 524288 Le texte est aligné à droite.
vbMsgBoxRtlReading 1048576 Spécifie que le texte doit apparaître pour être lu de droite à gauche dans les systèmes en Arabe et en Hébreu.
S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
Voir tous les commentaires

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x