Option Explicit
Dim Ind As Integer, Flg As Boolean
Private Sub CheckBox1_Click()
Worksheets("Données").Columns("C").Hidden = Not Me.CheckBox1.Value
Worksheets("Colonnes").Rows("1").Hidden = Not Me.CheckBox1.Value
'
Call AfficherBouton
End Sub
Private Sub CheckBox2_Click()
Worksheets("Données").Columns("D").Hidden = Not Me.CheckBox2.Value
Worksheets("Données").Rows("2").Hidden = Not Me.CheckBox2.Value
'
Call AfficherBouton
End Sub
Private Sub CheckBox3_Click()
Worksheets("Données").Columns("E").Hidden = Not Me.CheckBox3.Value
Worksheets("Données").Rows("3").Hidden = Not Me.CheckBox3.Value
'
Call AfficherBouton
End Sub
Private Sub CheckBox4_Click()
Worksheets("Données").Columns("F").Hidden = Not Me.CheckBox4.Value
Worksheets("Données").Rows("4").Hidden = Not Me.CheckBox4.Value
'
Call AfficherBouton
End Sub
Private Sub CheckBox5_Click()
Worksheets("Données").Columns("G").Hidden = Not Me.CheckBox5.Value
Worksheets("Données").Rows("5").Hidden = Not Me.CheckBox5.Value
'
Call AfficherBouton
End Sub
Private Sub CommandButton1_Click()
Call SupGraph
Call Graphiques
Call Macrotaille
'Graphique.Show
End Sub
' A l'ouverture de l'USF, appliquer les choix des Checkbox
Private Sub UserForm_Initialize()
Dim TabCol() As String
' Définir le tableau des colonnes
TabCol = Split("C,D,E,F,G", ",")
' Pour les CheckBox de 1 à 5
For Ind = 1 To 5
Worksheets("Données").Columns(TabCol(Ind - 1)).Hidden = Not Me("Checkbox" & Ind).Value
Worksheets("Colonnes").Rows(Ind).Hidden = Not Me("Checkbox" & Ind).Value
' Si au moins 1 CheckBox est à VRAI, le FLAG est à VRAI
If Me("Checkbox" & Ind).Value = True Then Flg = True
Next Ind
' Afficher ou masquer le bouton
Me.CommandButton1.Visible = Flg
End Sub
Sub AfficherBouton()
' Mettre le FLAG à FAUX avant tout
Flg = False
' Boucle sur les Checkbox
For Ind = 1 To 5
' Si une est à vrai
If Me("Checkbox" & Ind).Value = True Then
Flg = True: Exit For
End If
Next Ind
' Selon FLAG
Me.CommandButton1.Visible = Flg
If Flg = False Then Call SupGraph
End Sub