XL 2019 Msgbox différent selon le contenu d'une cellule

  • Initiateur de la discussion Initiateur de la discussion pat66
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

pat66

XLDnaute Impliqué
Bonjour le forum,

Je souhaiterai que le msgbox soit différent selon le contenu d'une cellule ce qui n'est pas le cas avec ma macro actuelle

Macro actuelle :

Sub osp()
Dim AnswerYes As String
Dim AnswerNo As String
AnswerYes = MsgBox("Souhaitez vous activer cette option ?", vbQuestion + vbYesNo, "Information")
If AnswerYes = vbYes Then
conditions 1 ........
else
conditions 2 .........
end if
end sub

Je souhaiterai un message différent selon le contenu de Y151, exemple :
Si cellule Y151 = "Oui"
MsgBox("Souhaitez vous désactiver cette option ?", vbQuestion + vbYesNo, "Information")
si réponse No = cancel = true
si réponse Yes
conditions 1 ...................

Si cellule Y151 = "Non"
MsgBox("Souhaitez vous activer cette option ?", vbQuestion + vbYesNo, "Information")
si réponse No = cancel = true
si réponse Yes
conditions 2 ...................

j'espère être clair
un grand merci et bon we

pat66
 
Dernière édition:
Solution
Bonjour @pat66 et @Staple1600

Je propose ceci

VB:
Sub osp()
Dim Reponse As Byte
Select Case Range("Y151")
Case "Oui"
    Reponse = MsgBox("Souhaitez vous désactiver cette option ?", 36, "Information")
    If Reponse = 6 Then         'L'utilisateur a répondu Oui
        'Condition Oui
    Else                        'L'utilisateur a répondu Non
        'Condition Non
    End If
Case "Non"
    Reponse = MsgBox("Souhaitez vous activer cette option ?", 36, "Information")
    If Reponse = 6 Then         'L'utilisateur a répondu Oui
        'Condition Oui
    Else                        'L'utilisateur a répondu Non
        'Condition Non
    End If
End Select
End Sub

Merci de ton retour
*Edit : Ajout du fichier

@Phil69970
Bonjo @pat66 🙂, @Staple1600 🙂, @Phil69970 🙂,

I k.i.s.s. you comme dirait @Staple1600 😚 ou 😝.

Juste pour le fun, en une seule instruction (Dans Y151, "Oui" est considérée comme étant "oui", tout autre contenu est assimilé à "non"). Le code :
VB:
Sub osp()
   If MsgBox("Cette option est actuellement" & IIf(LCase([y151]) = "oui", " activée.", " désactivée.") & vbLf & vbLf & "Voulez-vous" & IIf(LCase([y151]) = "oui", " la désactiver ?", " l'activer ?"), vbQuestion + vbYesNo + vbDefaultButton1) = vbYes Then [y151] = IIf(LCase([y151]) = "oui", "Non", "Oui") Else [y151] = IIf(LCase([y151]) = "oui", "Oui", "Non")
End Sub
 

Pièces jointes

Dernière édition:
Re,


Dans ce cas, joindre un fichier exemple qui respecte cette conception (mais sans données confidentielles) serait un plus pour faire des tests.

PS: Il n'est jamais interdit de revoir la conception d'un classeur.
Notamment si comme moi, on a tatoué sur l'épaule gauche ce principe K.I.S.S
A ne pas confondre avec ce KISS😉

Bonjo @pat66 🙂, @Staple1600 🙂, @Phil69970 🙂,

I k.i.s.s. you comme dirait @Staple1600 😚 ou 😝.

Juste pour le fun, en une seule instruction (Dans Y151, "Oui" est considérée comme étant "oui", tout autre contenu est assimilé à "non"). Le code :
VB:
Sub osp()
   If MsgBox("Cette option est actuellement" & IIf(LCase([y151]) = "oui", " activée.", " désactivée.") & vbLf & vbLf & "Voulez-vous" & IIf(LCase([y151]) = "oui", " la désactiver ?", " l'activer ?"), vbQuestion + vbYesNo + vbDefaultButton1) = vbYes Then [y151] = IIf(LCase([y151]) = "oui", "Non", "Oui") Else [y151] = IIf(LCase([y151]) = "oui", "Oui", "Non")
End Sub
Re,

bonsoir mapomme,
ta proposition est très instructive, mais je ne sais pas ou placer les différentes conditions selon le choix "oui" ou "non"
cdt
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
143
Réponses
7
Affichages
581
Retour