Case d'option Code éronné
Bonjour,
Sur ma Feuille excel j'ai mis des Cases d'option (contrôles de formulaire).
Via un bouton si je sélectionne case d'option 11 ou 12 ça m'ouvre tel ou tel feuille..
Sub ajout()
If Me.Shapes("Case d'option 11") = True Then
Sheets(Feuil9.name).Select
End If
If Me.Shapes("Case d'option 12") = True Then
Sheets(Feuil10.name).Select
End If
End SubMon soucis, "Me.shapes" ça ne fonctionne pas..
Merci d'avance !
Bonjour,
Puisque le but final est d'utiliser du vba ; tu ne peux pas remplacer tes "Cases Formulaires" par des "Option button" (Contrôle activX )
PLus simple à gérer
Bonjour Xmenpl,
Si bien sûr ceci ne me dérange pas..
et du coup mon code c'est comme un optionbutton d'un userform ?
Sub ajout()
If OptionButton1 = True Then
Sheets(Feuil9.name).Select
End If
If OptionButton2 = True Then
Sheets(Feuil10.name).Select
End If
End SubOui exactement. beaucoup plus simple.
cependant vu ton code il me semble que si le bouton 1 n' est pas coché alors le bouton 2 le sera surement non ?
çà revient à écrire :
Sub ajout()
If OptionButton1 = True Then
Sheets(Feuil9.name).Select
Else
Sheets(Feuil10.name).Select
End Else
End If
End SubEn faite j'ai simplifié mon code
Mais en vrai ça donne ça:
Sub ajout()
If Sheets(Feuil1.name).OptionButton1 = True Then
Sheets(Feuil9.name).Select
'14/21
If Sheets(Feuil1.name).Range("F16") = 1 Then
Sheets(Feuil9.name).Rows("11:26").Hidden = True
End If
If Sheets(Feuil1.name).Range("F16") = 2 Then
Sheets(Feuil9.name).Rows("11:26").Hidden = True
End If
If Sheets(Feuil1.name).Range("F16") = 3 Then
Sheets(Feuil9.name).Rows("11:18").Hidden = False
Sheets(Feuil9.name).Rows("19:26").Hidden = True
End If
If Sheets(Feuil1.name).Range("F16") = 4 Then
Sheets(Feuil9.name).Rows("11:18").Hidden = False
Sheets(Feuil9.name).Rows("19:26").Hidden = True
End If
If Sheets(Feuil1.name).Range("F16") = 5 Then
Sheets(Feuil9.name).Rows("11:26").Hidden = False
End If
If Sheets(Feuil1.name).Range("F16") = 6 Then
Sheets(Feuil9.name).Rows("11:26").Hidden = False
End If
'14/30
If Sheets(Feuil1.name).Range("G16") = 1 Then
Sheets(Feuil9.name).Rows("35:50").Hidden = True
End If
If Sheets(Feuil1.name).Range("G16") = 2 Then
Sheets(Feuil9.name).Rows("35:50").Hidden = True
End If
If Sheets(Feuil1.name).Range("G16") = 3 Then
Sheets(Feuil9.name).Rows("35:44").Hidden = False
Sheets(Feuil9.name).Rows("43:50").Hidden = True
End If
If Sheets(Feuil1.name).Range("G16") = 4 Then
Sheets(Feuil9.name).Rows("35:44").Hidden = False
Sheets(Feuil9.name).Rows("43:50").Hidden = True
End If
If Sheets(Feuil1.name).Range("G16") = 5 Then
Sheets(Feuil9.name).Rows("35:50").Hidden = False
End If
If Sheets(Feuil1.name).Range("G16") = 6 Then
Sheets(Feuil9.name).Rows("35:50").Hidden = False
End If
Sheets(Feuil9.name).Select
'Impression
If MsgBox("Souhaitez-vous imprimer les étiquettes ?", vbOKCancel, "Demande de Confirmation") = vbOK Then
ActiveWindow.ActiveSheet.PrintOut
End If
Else: Sheets(Feuil1.name).Select
Sheets(Feuil1.name).Select
End If
'----------------
If Sheets(Feuil1.name).OptionButton2 = True Then
Sheets(Feuil16.name).Select
'14/21
If Sheets(Feuil1.name).Range("F16") = 1 Then
Sheets(Feuil16.name).Rows("11:26").Hidden = True
End If
If Sheets(Feuil1.name).Range("F16") = 2 Then
Sheets(Feuil16.name).Rows("11:26").Hidden = True
End If
If Sheets(Feuil1.name).Range("F16") = 3 Then
Sheets(Feuil16.name).Rows("11:18").Hidden = False
Sheets(Feuil16.name).Rows("19:26").Hidden = True
End If
If Sheets(Feuil1.name).Range("F16") = 4 Then
Sheets(Feuil16.name).Rows("11:18").Hidden = False
Sheets(Feuil16.name).Rows("19:26").Hidden = True
End If
If Sheets(Feuil1.name).Range("F16") = 5 Then
Sheets(Feuil16.name).Rows("11:26").Hidden = False
End If
If Sheets(Feuil1.name).Range("F16") = 6 Then
Sheets(Feuil16.name).Rows("11:26").Hidden = False
End If
'14/30
If Sheets(Feuil1.name).Range("G16") = 1 Then
Sheets(Feuil16.name).Rows("35:50").Hidden = True
End If
If Sheets(Feuil1.name).Range("G16") = 2 Then
Sheets(Feuil16.name).Rows("35:50").Hidden = True
End If
If Sheets(Feuil1.name).Range("G16") = 3 Then
Sheets(Feuil16.name).Rows("35:44").Hidden = False
Sheets(Feuil16.name).Rows("43:50").Hidden = True
End If
If Sheets(Feuil1.name).Range("G16") = 4 Then
Sheets(Feuil16.name).Rows("35:44").Hidden = False
Sheets(Feuil16.name).Rows("43:50").Hidden = True
End If
If Sheets(Feuil1.name).Range("G16") = 5 Then
Sheets(Feuil16.name).Rows("35:50").Hidden = False
End If
If Sheets(Feuil1.name).Range("G16") = 6 Then
Sheets(Feuil16.name).Rows("35:50").Hidden = False
End If
Sheets(Feuil16.name).Select
'Impression
If MsgBox("Souhaitez-vous imprimer les étiquettes ?", vbOKCancel, "Demande de Confirmation") = vbOK Then
ActiveWindow.ActiveSheet.PrintOut
End If
Else: Sheets(Feuil1.name).Select
Sheets(Feuil1.name).Select
End If
Sheets(Feuil1.name).Select
End SubEt là il fonctionne au TOP !!!
Après certainement moyen de le simplifier ...