Changement Valeur CheckBox non uniforme
Bonjour, tout d’abord je souhaites une bonne année à tout le monde !
Je viens de nouveau sur ce forum pour vous demander un petit truc :
Je suis en train de créer une petit fichier excel qui va avoir comme particularité de demander à l’ouverture, grâce à une userform, quelles colonnes doivent être pré-remplies ou pas.
J’ai donc dans l’user form des checkbox, qui vont avoir pour rôles d’inscrire quelques choses dans leur case respective. Exemple :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| Private Sub CheckBox1_Click()
Application.ScreenUpdating = False
Select Case CheckBox1.Value
'show
Case True: Range("A:A").EntireColumn.Hidden = False
'écriture
Range("A1").Value = "N°"
'Si la case n'est pas coché, ne rien avoir dans la colonne
Case False: Range("A:A").Value = ""
'Selectionner la colonne et la faire disparaitre.
Range("A:A").EntireColumn.Hidden = True
Case Else: CheckBox1.Caption = "Null"
End Select
End Sub |
La ça va donc écrire « N° » dans la case A1.
Mon problème c’est que j’ai comme ça une trentaine de colonne, lors de la réouverture du fichier, j’ai créer ceci dans l’userform activate afin de vérifier si les checkbox doivent apparaitres coché ou pas suivant dans quelles colonnes sont restées remplies avec la sauvegarde.
Code:
1 2 3 4 5
| If Range("A1").Value = "N°" Then
CheckBox1.Value = True
Else
Range("A:A").EntireColumn.Hidden = True
End If |
Le problème c’est que j’ai donc trente fois ça avec différente case et valeur…
Ne serait-il pas possible de faire une boucle afin qu’elle vérifie dans chaque colonne si une valeur existe, (même n’importe laquelle) et qu’elle coche les checkbox correspondante.
Je suis débutant, je pensais à un truc du genre
Code:
1 2 3 4 5 6 7
| Dim compteur As Long
For compteur = "1" To "28"
I = I + 1
If Range(I).Value <> "" Then
CheckBox"I".Value = True
End If
Next compteur |
(ce qui ne fonctionne pas bien évidemment ;) mais vous aidera à trouver ce que je souhaite faire )
Sinon si je prends le problème dans un autre sens, est-il possible de sauvegarder la valeur de toutes les checkbox à un moment donné afin de savoir lesquelles sont cochées, ou pas et donc de les réutiliser lors de l’apparition de l’userform ?
Voilà, merci !