Bonjour à tous,
J'ai créer un userform avec des checkbox et qui incrémente les cellules de toute une colonne (la colonne X)
Toutefois, j'aimerais que lorsque je doubleclique sur X234 (ou une autre cellule de la colonne X) pour initialiser mon userform, la ligne de la celulle ou j'ai cliquer soit prise en compte et prise pour cible pour les modifications apportées par les checkbox.
Quelqu'un peut-il m'aider?
Voici le code de la feuille :
Voici le code d'initialisation du userform :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Column <> 23 Then UserForm1.Show End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 Private Sub UserForm_Initialize() Dim i As Integer ' Initialise le tableau et la première ligne ReDim tabl(1000) As String ligne = Range("X" & i).Row ' vide la colonne X For i = ligne To Range("X65536").End(xlUp).Row Range("x" & i).Clear Next Label1.Caption = ligne Label3.Caption = Range("g" & ligne).Value Label4.Caption = Range("h" & ligne).Value Label5.Caption = Range("i" & ligne).Value UserForm1.Caption = Range("d" & ligne).Value & " - " & Range("x" & ligne).Value End Sub
Pour vous donner toutes les infos dont vous pourriez avoir besoin, voilà le code en haut du userform :
Et celui d'une checkbox :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Option Explicit Dim tabl() As String Dim ligne As Integer
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 Private Sub CheckBox1_Change() Dim i As Integer Dim variable As String Range("X" & ligne).Clear If CheckBox1.Value = True Then tabl(1) = "2339, " Else tabl(1) = "" End If For i = 1 To 1000 variable = variable & tabl(i) Next Range("X" & ligne).Value = variable UserForm1.Caption = Range("d" & ligne).Value & " - " & Range("x" & ligne).Value End Sub
Merci d'avance !
David
Partager