Microsoft 365 Masquer bouton d'option quand lignes masquées

  • Initiateur de la discussion Initiateur de la discussion FCMLE44
  • 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 !

FCMLE44

XLDnaute Impliqué
Bonjour

Dans le fichier Essai Tâches en pièce jointe, je souhaite lorsque le clique sur le bouton d'option Estimation en B3 que les lignes 75 à 101 de cette feuille se masquent
J'ai cette macro
VB:
Sub Casdoption1_Cliquer()
'ActiveSheet.Unprotect
Application.EnableEvents = True
ActiveSheet.Rows("75:101").Hidden = True
Application.EnableEvents = True
ActiveSheet.Rows("72:73").Hidden = True
Application.EnableEvents = True
'ActiveSheet.Protect
End Sub

Ca fonctionne, seulement le souci c'est que sur quelques unes de ces lignes, j'ai des boutons d'options. Le masquage se fait bien mais les bouton d'options restent en visu

Auriez vous une idée SVP ?

Merci
 

Pièces jointes

Solution
tes cases à cocher sont devenues des 'Check Box' et la numérotation est 13 à 20


VB:
Sub Casdoption1_Cliquer()
'ActiveSheet.Unprotect
Application.EnableEvents = True
ActiveSheet.Rows("75:101").Hidden = True
Application.EnableEvents = True
ActiveSheet.Rows("72:73").Hidden = True
Application.EnableEvents = True
'ActiveSheet.Protect
'For i = 4 To 11
'    ActiveSheet.Shapes("Caseàcocher " & i).Visible = False
'
'Next i
For i = 13 To 20
  
     ActiveSheet.Shapes("Check Box " & i).Visible = False
Next i


End Sub
Bonjour FCMLE44
en ajoutant le code pour masquer ou afficher les boutons (à adapter si nécessaire ou évolution)

VB:
Sub Casdoption1_Cliquer()
'ActiveSheet.Unprotect
Application.EnableEvents = True
ActiveSheet.Rows("75:101").Hidden = True
Application.EnableEvents = True
ActiveSheet.Rows("72:73").Hidden = True
Application.EnableEvents = True
'ActiveSheet.Protect
For i = 4 To 11
    ActiveSheet.Shapes("Option Button " & i).Visible = False
Next i
End Sub
'----------------------- Démasque liste des tâches----------------------------------
Sub Casdoption2_Cliquer()
'ActiveSheet.Unprotect
Application.EnableEvents = False
ActiveSheet.Rows("75:101").Hidden = False
Application.EnableEvents = True
ActiveSheet.Rows("72:72").Hidden = True
Application.EnableEvents = True
'ActiveSheet.Protect
For i = 4 To 11
    ActiveSheet.Shapes("Option Button " & i).Visible = True
Next i
End Sub
Sub Casdoption3_Cliquer()
'ActiveSheet.Unprotect
Application.EnableEvents = False
ActiveSheet.Rows("71:101").Hidden = False
Application.EnableEvents = True
ActiveSheet.Rows("67:68").Hidden = False
Application.EnableEvents = True
'ActiveSheet.Protect
For i = 4 To 11
    ActiveSheet.Shapes("Option Button " & i).Visible = True
Next i
End Sub
 

Pièces jointes

Tu fais une macro manuelle
1615994614207.png
ou
1615994641774.png
1615994656079.png

en déplaçant l'objet par exemple pour savoir comment il s'appelle en VBA.
 
tes cases à cocher sont devenues des 'Check Box' et la numérotation est 13 à 20


VB:
Sub Casdoption1_Cliquer()
'ActiveSheet.Unprotect
Application.EnableEvents = True
ActiveSheet.Rows("75:101").Hidden = True
Application.EnableEvents = True
ActiveSheet.Rows("72:73").Hidden = True
Application.EnableEvents = True
'ActiveSheet.Protect
'For i = 4 To 11
'    ActiveSheet.Shapes("Caseàcocher " & i).Visible = False
'
'Next i
For i = 13 To 20
  
     ActiveSheet.Shapes("Check Box " & i).Visible = False
Next i


End Sub
 
- 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
14
Affichages
1 K
Réponses
1
Affichages
359
  • Question Question
XL 2013 Aide VBA
Réponses
4
Affichages
1 K
Retour