est-il possible d'ajouter un bouton de commande dans la fenêtre de msgbox dans vba? Par exemple, je veux ajouter un bouton d'annulation qui arrête le code plutôt que de le poursuivre. Je pourrais créer une nouvelle userform, mais ce serait bien si j'économisais de l'espace et utilisais le msgbox qui est déjà là.Bouton de commande dans msgbox vba possible?
Répondre
VBA a plusieurs différents types de MessageBoxes avec construit dans les boutons de commande pour ce but. Le type de boutons inclus dans la boîte de message est déclaré comme second paramètre - MsgBox (invite, Boutons comme)
Les types que vous êtes probablement intéressé sont:
- vbYesNo
- vbYesNoCancel
- vbAbortRetryIgnore
- vbOKCancel
- vbRetryCancel
Ces boutons renvoient des valeurs entières qui doivent être stockées ou utilisées à des fins de comparaison.
VBA a ces réponses entières stockées en tant que constantes (par exemple vbOK = 1, VbCancel = 2, etc.) Voir Microsoft Developer Network MsgBox Function pour plus de détails à ce sujet.
Sub mySub()
Dim answer as Integer
answer = MsgBox("Would you like to choose yes?", vbYesNoCancel)
If answer = vbYes Then
'Do whatever you want
ElseIf answer = vbNo Then
'Do whatever
Else
Exit Sub
End If
End Sub
Merci beaucoup. Votre réponse a été très utile !! –
Grand , si cela a fonctionné pour vous, n'hésitez pas à marquer la question comme la réponse en cliquant sur la coche en dessous des flèches sur la gauche. – BobtimusPrime
Essayez ceci:
If MsgBox("Cancel or Continue, are you sure?", vbOKCancel) = vbOK Then
'continue whatever you want to do.
End if
semble wok bien aussi. Thankss –
Avez-vous pas pris la peine * * regarder ce que IntelliSense vous dit que vous tapez 'MsgBox ('? –