J'ai ce code qui fonctionne bien, il met un trait-union en D si C est pas vide, mais il est trop long comment faire une boucle?
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 Private Sub Worksheet_Change(ByVal Target As Range) ' ' '1ER EMPLOYÉ TEMPS PLEIN ' ' If Not Application.Intersect(Target, Range("c7")) Is Nothing Then Call C7 End If If Not Application.Intersect(Target, Range("c9")) Is Nothing Then Call c9 End If If Not Application.Intersect(Target, Range("c10")) Is Nothing Then Call C10 End If If Not Application.Intersect(Target, Range("f7")) Is Nothing Then Call f7 End If If Not Application.Intersect(Target, Range("f9")) Is Nothing Then Call f9 End If If Not Application.Intersect(Target, Range("f10")) Is Nothing Then Call f10 End Ifle tout continu jusqu'en AU et ensuite je recommence pour le groupe de cellules (c11/d11 c13/d13) (f11/g11 f13/g13) etc. p.s. le premier groupe est spécial, il contient 3 cellules différentes! le reste n'en contient que 2
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 Sub C7() If Not IsEmpty(Range("c7")) Then Range("d7") = "-" Else Range("d7") = "" End If End Sub Sub c9() If Not IsEmpty(Range("c9")) Then Range("d9") = "-" Else Range("d9") = "" End If End Sub Sub C10() If Not IsEmpty(Range("c10")) Then Range("d10") = "-" Else Range("d10") = "" End If End Sub Sub f7() If Not IsEmpty(Range("f7")) Then Range("g7") = "-" Else Range("g7") = "" End If End Sub Sub f9() If Not IsEmpty(Range("f9")) Then Range("g9") = "-" Else Range("g9") = "" End If End Sub Sub f10() If Not IsEmpty(Range("f10")) Then Range("g10") = "-" Else Range("g10") = "" End If End Sub
Partager