VBA-excel : conditions sur les OptionButton

Résolu
remix1502 Messages postés 64 Date d'inscription   Statut Membre Dernière intervention   -  
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
Je créé un formulaire dans lequel l'utilisateur fait 4 fois un choix entre oui et non grace à des OptionButton.
Je voudrais que suivant les résultats indiqués, un message apparraissent.

Or je n'arrive pas à combiner le résultat de plusieurs OptionButton.
Voici un exemple de mon code VBA (qui ne marche pas) appliqué au 4ème bouton et censé prendre en compte les résultats des 3 choix précédents :

Private Sub cable_non_Click()
If (AX18 = FAUX And AX20 = FAUX And AX22 = FAUX) Then
Rows("25:28").Select
Selection.EntireRow.Hidden = True
Else
Rows("27:28").Select
Selection.EntireRow.Hidden = True
End If
End Sub

Les 3 cellules AX sont les cellules liés aux 3 OptionButtons précédents. Dedans s'affiche soit "VRAI" soit "FAUX".

Je pense que mon problème a 2 origines :
1. je ne suis pas sûr de savoir imposer plusieurs conditions dans mon IF (est-ce bien And qu'il faut utiliser ?)
2. je ne suis pas non plus sûr que la comparaison de chaine de caractères soit possible (AX18 = FAUX) => ne peut-on pas avoir des bons vieux 0 et 1 à la place de vrai et faux pour simplifier la comparaison ?

Merci de votre aide et de vos avis.
Je compte sur votre réactivité,

Remix!
A voir également:

2 réponses

remix1502 Messages postés 64 Date d'inscription   Statut Membre Dernière intervention   1
 
Bon je me suis auto-résolu !

J'ai fini par découvrir que la comparaison de cellule en vba s'écrit [A1]=[A2]

D'où la 1ere ligne de mon if qui change :

If ([AX18] = [BB2] And [AX20] = [BB2] And [AX22] = [BB2]) Then

Avec BB2 une cellule qui vaut toujours "FAUX"

Merci quand même, et en espérant permettre à d'autres de trouver ce qu'ils cherchaient je clique sur "résolu"
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention  
 
bonjour
VBA est en anglais...
donc FALSE au lieu de FAUX

si tu veux des" bons vieux 0"
AX18*1=0 <==> AX18=FALSE

tu pourrais aussi marquer
IF NOT AX18 AND NOT....
0