Bonjour,
Je suis à créer un classeur avec plusieurs checkbox sur une même ligne. J'associe des VBA à ces checkbox afin que des valeurs soient associés en fonction que la checkbox est coché ou pas.
Ma problématique est que chaque ligne correspond à un incident. Donc au fur et à mesure que de nouveaux incidents sont créés, je veux réutiliser les checkbox de la ligne précédent.
1. Comment aisément copier tous les checkbox d'une ligne sur la ligne du dessous?
2. Comment réutiliser les checkbox d'une ligne à l'autre?
3. Y-a-t-il une manière de décocher tous les checkbox d'un classeur d'un coup?
En pièce jointe un exemple de fichier avec les cases à cocher.
Merci pour votre aide,
François Racine
Je suis à créer un classeur avec plusieurs checkbox sur une même ligne. J'associe des VBA à ces checkbox afin que des valeurs soient associés en fonction que la checkbox est coché ou pas.
Ma problématique est que chaque ligne correspond à un incident. Donc au fur et à mesure que de nouveaux incidents sont créés, je veux réutiliser les checkbox de la ligne précédent.
1. Comment aisément copier tous les checkbox d'une ligne sur la ligne du dessous?
2. Comment réutiliser les checkbox d'une ligne à l'autre?
3. Y-a-t-il une manière de décocher tous les checkbox d'un classeur d'un coup?
Code:
Private Sub CheckBox1_Click()
With ActiveSheet.Shapes("Checkbox1").TopLeftCell
nligne = .Row
ncolonne = .Column
sAddresse = .Address
End With
'Valeur de la réponse quand la case est cochée
nvaleur = 20
'Colonne à côté signifie +1 ou 1
nemplacementvaleur = 1
Call setvaleur(nligne, ncolonne, nvaleur, nemplacementvaleur)
End Sub
Private Sub setvaleur(S_nligne, S_ncolonne, S_nvaleur, S_nemplacementvaleur)
S_celloutput = Cells(S_nligne, S_ncolonne + S_nemplacementvaleur).Address
'(RowAbsolute:=False, ColumnAbsolute:=False)
If CheckBox1.Value = True Then Range(S_celloutput).Value = S_nvaleur
If CheckBox1.Value = False Then Range("C4").Value = 0
End Sub
En pièce jointe un exemple de fichier avec les cases à cocher.
Merci pour votre aide,
François Racine