Bonjour à tous,
Dans la pièce jointe ci-dessous, vous trouverez un exemple de planning avec un userform. Ce que je veux faire, c'est permettre de rentrer les congés d'un technicien. En gros, je choisis le technicien, les dates de début et fin de ses congés, je clique sur "ok" et les cellules correspondant à ses congés se remplissent. Mais mon code ne fonctionne pas tout à fait... Il remplit toutes les lignes du technicien sans se préoccuper des dates. Le voici :
Voyez vous ce qui ne va pas ? Merci de votre aide !
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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 Private Sub BT_Arrets_Conges_Click() If Not IsDate(TB_Dbt.Value) Or Not IsDate(TB_Fin.Value) Then LB_Attention.Visible = True Else LB_Attention.Visible = False Form_Eric_2.Hide Dim dbt, fin As Date Dim i, j, DernLigne As Integer dbt = TB_Dbt.Value fin = TB_Fin.Value DernLigne = Range("B" & Rows.Count).End(xlUp).Row For i = 6 To DernLigne Step 1 If Cells(i, 4).NumberFormat = "d-mmm" Then For j = 4 To 8 Step 1 If dbt <= Cells(i, j).Value <= fin Then Dim k As Integer k = i + 1 While Cells(k, 2).Value <> CB_Collaborateur.Value k = k + 1 Wend With Cells(k, j) .Value = CB_Type.Value .Interior.Color = vbBlue End With With Cells(k + 1, j) .Value = CB_Type.Value .Interior.Color = vbBlue End With End If Next End If Next End If End Sub
Partager