VBA : Comment créer une boîte de message avec des réponses oui/non



Vous pouvez utiliser la syntaxe suivante dans VBA pour créer une boîte de message permettant à un utilisateur de sélectionner Oui ou Non :

Sub MsgBoxYesNo()

    'ask user if they want to multiply two cells
    UserResponse = MsgBox("Do you want to multiply cells A1 and B1?", vbYesNo)

    'perform action based on user response
    If UserResponse = vbYes Then
      Range("C1") = Range("A1") * Range("B1")
    Else
      MsgBox "No Multiplication was Performed"
    End If

End Sub

Cette macro particulière crée une boîte de message qui demande à l’utilisateur s’il souhaite multiplier les cellules A1 et B1.

Si l’utilisateur clique sur « Oui », les deux cellules sont multipliées et le résultat est affiché dans la cellule C1.

Si l’utilisateur clique sur « Non », une nouvelle boîte de message apparaît lui indiquant qu’aucune multiplication n’a été effectuée.

Notez que l’instruction vbYesNo est ce qui insère les boutons « Oui » et « Non » sur lesquels l’utilisateur doit cliquer.

Les exemples suivants montrent comment utiliser cette syntaxe dans la pratique.

Exemple : Créer une boîte de message avec des réponses Oui/Non

Supposons que nous ayons les deux valeurs suivantes dans les cellules A1 et B1 de notre feuille Excel :

Supposons que nous souhaitions créer une macro qui affiche une boîte de message à l’utilisateur et lui demande s’il souhaite ou non multiplier les valeurs des cellules A1 et B1.

Nous pouvons créer la macro suivante pour ce faire :

Sub MsgBoxYesNo()

    'ask user if they want to multiply two cells
    UserResponse = MsgBox("Do you want to multiply cells A1 and B1?", vbYesNo)

    'perform action based on user response
    If UserResponse = vbYes Then
      Range("C1") = Range("A1") * Range("B1")
    Else
      MsgBox "No Multiplication was Performed"
    End If

End Sub

Lorsque nous exécutons cette macro, la boîte de message suivante apparaît :

VBA msgbox oui ou non

Si nous cliquons sur Oui , alors la macro multipliera les valeurs dans les cellules A1 et B2 et affichera le résultat dans la cellule C1 :

Cependant, si nous cliquons sur Non , une nouvelle boîte de message apparaîtra :

La boîte de message nous indique qu’aucune multiplication n’a été effectuée puisque nous avons cliqué sur Non dans la boîte de message précédente.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :

VBA : Comment ajouter une nouvelle ligne à la boîte de message
VBA : Comment ajouter de nouvelles feuilles
VBA : Comment geler les volets

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *