Sub MasqueBouton()
Dim Shp As Shape
Dim i As Integer
'Boucle sur les bouton de la Feuil1 (A adapter)
'Si tu veux tout masquer cette boucle est inutile ==> For i =....
For i = 1 To 7 'Si tes numéros de bouton sont de 1 à 7 (A adapter)
For Each Shp In Feuil1.Shapes
If Shp.Name = "Button " & i Then Shp.Visible = False
Next Shp
Next i
End Sub
Sub AfficheBouton()
Dim Shp As Shape
Dim i As Integer
'Boucle sur les bouton de la Feuil1 (A adapter)
'Si tu veux tout masquer cette boucle est inutile ==> For i =....
For i = 1 To 7 'Si tes numéros de bouton sont de 1 à 7 (A adapter)
For Each Shp In Feuil1.Shapes
If Shp.Name = "Button " & i Then Shp.Visible = True
Next Shp
Next i
End Sub
MerciVoici mon fichier exemple
Non, pas de soucis, Phil69970 est sur le coup. Je suis en train de tester ces solutions.Merci. Du coup maintenant, j'ai la pression pour trouver une réponse
Si je compte bien , nous sommes 3 à être sur le coup...Phil69970 est sur le coup. Je suis en train de tester ces solutions.
Le fil,Le fil
@Staple1600 je t'ai répondu ici :
@Tchotchodu31 :
Oui c'est possible dans ton code ou celui de Staple1600
Avant de cacher tes lignes tu masques les boutons
VB:Worksheets("Données_à_saisir").Shapes("Bouton 428").Visible = False
Et quand tu les démasques tu fais le contraire
VB:Worksheets("Données_à_saisir").Shapes("Bouton 428").Visible = True
@Phil69970
il s'agit de bière ?Merci. Du coup maintenant, j'ai la pression pour trouver une réponse
Sub MasqueAfficherBouton()
Dim shp As Shape
For Each shp In ActiveSheet.Shapes
If shp.Type = msoFormControl Then
shp.Visible = Not shp.Visible
End If
Next shp
End Sub
Sub MasqueBouton()
Dim Shp As Shape
Dim i As Integer
'Boucle sur les bouton de la Feuil1 (A adapter)
'Si tu veux tout masquer cette boucle est inutile ==> For i =....
For i = 1 To 7 'Si tes numéros de bouton sont de 1 à 7 (A adapter)
For Each Shp In Feuil1.Shapes
If Shp.Name = "Button " & i Then Shp.Visible = False
Next Shp
Next i
End Sub
Sub AfficheBouton()
Dim Shp As Shape
Dim i As Integer
'Boucle sur les bouton de la Feuil1 (A adapter)
'Si tu veux tout masquer cette boucle est inutile ==> For i =....
For i = 1 To 7 'Si tes numéros de bouton sont de 1 à 7 (A adapter)
For Each Shp In Feuil1.Shapes
If Shp.Name = "Button " & i Then Shp.Visible = True
Next Shp
Next i
End Sub
Le fil,Le fil
VB:Sub MasqueBouton() Dim Shp As Shape Dim i As Integer 'Boucle sur les bouton de la Feuil1 (A adapter) 'Si tu veux tout masquer cette boucle est inutile ==> For i =.... For i = 1 To 7 'Si tes numéros de bouton sont de 1 à 7 (A adapter) For Each Shp In Feuil1.Shapes If Shp.Name = "Button " & i Then Shp.Visible = False Next Shp Next i End Sub Sub AfficheBouton() Dim Shp As Shape Dim i As Integer 'Boucle sur les bouton de la Feuil1 (A adapter) 'Si tu veux tout masquer cette boucle est inutile ==> For i =.... For i = 1 To 7 'Si tes numéros de bouton sont de 1 à 7 (A adapter) For Each Shp In Feuil1.Shapes If Shp.Name = "Button " & i Then Shp.Visible = True Next Shp Next i End Sub
Edit : @Staple1600 je t'ai vu, tu as bougé...
@Phil69970
Sub MasqueAfficherBouton_bis()
Dim Shp As Shape
For Each Shp In Feuil1.Shapes
If Shp.Name Like "Button*" Then
Shp.Visible = Not Shp.Visible
End If
Next
End Sub
@Phil69970Edit2: Astuce Si tu as que quelques boutons à masquer renomment ces boutons avec une numérotation pouvant être manipuler facilement exemple "Bouton 1" "Bouton 2" etc ..
Tu pourrais les manipuler avec la boucle For i =....
Sub MasqueAfficherBouton_ter()
Dim Shp As Shape
For Each Shp In Feuil1.Shapes
If Shp.Name Like "Button*" Then
If Shp.TopLeftCell.Column = 7 Then
Shp.Visible = Not Shp.Visible
End If
End If
Next
End Sub