Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Macro qui permet de basculer entre oui et non

pat66

XLDnaute Impliqué
Bonjour le forum,

je souhaite écrire une une macro qui permet à chaque clic de basculer entre oui et non dans la cellule G101, cette macro sera attribuée à une forme située sur la même feuille

merci d'avance pour vos conseils

cdt
 
Solution
Bonsoir Pat, Don_pets, Job,
Un essai en PJ avec action par clic gauche sur G101, avec.
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [G101]) Is Nothing Then
        If Target = "OUI" Then Target = "NON" Else Target = "OUI"
        [F101].Select
    End If
End Sub
ou par clic sur forme avec :
VB:
Sub OuiNon()
    If [G101] = "OUI" Then [G101] = "NON" Else [G101] = "OUI"
End Sub

jpb388

XLDnaute Accro
bonjour
a mettre dans un module et a relier avec la forme
si j'ai bien compris le problème
VB:
Sub oui_non()
      Select Case StrConv(Range("G101").Text, vbUpperCase)
            Case "", "NON": Range("G101") = "OUI"
            Case "OUI": Range("G101") = "NON"
      End Select
End Sub
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir Pat, Don_pets, Job,
Un essai en PJ avec action par clic gauche sur G101, avec.
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Count > 1 Then Exit Sub
    If Not Intersect(Target, [G101]) Is Nothing Then
        If Target = "OUI" Then Target = "NON" Else Target = "OUI"
        [F101].Select
    End If
End Sub
ou par clic sur forme avec :
VB:
Sub OuiNon()
    If [G101] = "OUI" Then [G101] = "NON" Else [G101] = "OUI"
End Sub
 

Pièces jointes

  • OUI_NON.xlsm
    14.5 KB · Affichages: 2

pat66

XLDnaute Impliqué
bonjour le forum,
bonjour le fil

vos solutions fonctionnement parfaitement, j'opte pour la plus courte de sylvanu, bien que la solution de jpb388 sera très utile dans d'autres circonstances, comme par exemple d'ajouter un msgbox

VB:
Sub OuiNon()
    If [G101] = "OUI" Then [G101] = "NON" Else [G101] = "OUI"
End Sub

merci à tous les deux

cdt
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…