Bonjour,
j' écris un code pour inscrire des valeurs calculées dans de petites zones texte consécutives dans des cellules.
ces valeurs sont calculées en fonction du contenue des cellules sur la même ligne et d'autres cellules consécutives.
le code pour chaque zone texte concernée est pratiquement le même en tenant compte du changement de ligne.
le code j'ai écris marche mais c'est fastidieux de le dupliquer sur un grand nombre de zone texte.
Pour infos j'ai les zones textes suivantes : zone texte 43; 44;.........81; puis 95; 96; 97; 99 ... 103
ce qui m’intéresse c'est la partie de 43 ;44....81
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76 Sub depassement_creneaux ActiveSheet.Shapes.range(Array("Rectangle 43")).Select If range("D4") = "8:00-9:00" And Round(((range("D7").Value) + range("E7") * 5) * 60 / range("D21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "9:" & Round(((range("D7").Value) + range("E7") * 5) * 60 / range("D21")) - 60 If range("D4") = "9:00-10:00" And Round(((range("D7").Value) + range("E7") * 5) * 60 / range("F21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "11:" & Round(((range("D7").Value) + range("E7") * 5) * 60 / range("F21")) - 60 If range("D4") = "10:00-11:00" And Round(((range("D7").Value) + range("E7") * 5) * 60 / range("H21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "12:" & Round(((range("D7").Value) + range("E7") * 5) * 60 / range("H21")) - 60 If range("D4") = "11:00-12:00" And Round(((range("D7").Value) + range("E7") * 5) * 60 / range("J21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "13:" & Round(((range("D7").Value) + range("E7") * 5) * 60 / range("J21")) - 60 If range("D4") = "12:00-13:00" And Round(((range("D7").Value) + range("E7") * 5) * 60 / range("L21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "14:" & Round(((range("D7").Value) + range("E7") * 5) * 60 / range("L21")) - 60 If range("D4") = "13:00-14:00" And Round(((range("D7").Value) + range("E7") * 5) * 60 / range("N21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "15:" & Round(((range("D7").Value) + range("E7") * 5) * 60 / range("N21")) - 60 If range("D4") = "14:00-15:00" And Round(((range("D7").Value) + range("E7") * 5) * 60 / range("P21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "16:" & Round(((range("D7").Value) + range("E7") * 5) * 60 / range("P21")) - 60 If range("B4") = "15:00-16:00" And Round(((range("D7").Value) + range("E7") * 5) * 60 / range("R21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "16:" & Round(((range("D7").Value) + range("E7") * 5) * 60 / range("R21")) - 60 If range("D4") = "16:00-17:00" And Round(((range("D7").Value) + range("E7") * 5) * 60 / range("T21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "lendemain" ActiveSheet.Shapes.range(Array("Rectangle 44")).Select If range("D4") = "8:00-9:00" And Round(((range("D8").Value) + range("E8") * 5) * 60 / range("D21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "9:" & Round(((range("D8").Value) + range("E8") * 5) * 60 / range("D21")) - 60 If range("D4") = "9:00-10:00" And Round(((range("D8").Value) + range("E8") * 5) * 60 / range("F21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "11:" & Round(((range("D8").Value) + range("E8") * 5) * 60 / range("F21")) - 60 If range("D4") = "10:00-11:00" And Round(((range("D8").Value) + range("E8") * 5) * 60 / range("H21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "12:" & Round(((range("D8").Value) + range("E8") * 5) * 60 / range("H21")) - 60 If range("D4") = "11:00-12:00" And Round(((range("D8").Value) + range("E8") * 5) * 60 / range("J21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "13:" & Round(((range("D7").Value) + range("E7") * 5) * 60 / range("J21")) - 60 If range("D4") = "12:00-13:00" And Round(((range("D8").Value) + range("E8") * 5) * 60 / range("L21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "13:" & Round(((range("D8").Value) + range("E8") * 5) * 60 / range("J21")) - 60 If range("D4") = "13:00-14:00" And Round(((range("D8").Value) + range("E8") * 5) * 60 / range("N21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "14:" & Round(((range("D8").Value) + range("E8") * 5) * 60 / range("L21")) - 60 If range("D4") = "14:00-15:00" And Round(((range("D8").Value) + range("E8") * 5) * 60 / range("P21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "15:" & Round(((range("D8").Value) + range("E8") * 5) * 60 / range("N21")) - 60 If range("D4") = "15:00-16:00" And Round(((range("D8").Value) + range("E8") * 5) * 60 / range("R21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "16:" & Round(((range("D8").Value) + range("E8") * 5) * 60 / range("P21")) - 60 If range("D4") = "16:00-17:00" And Round(((range("D8").Value) + range("E8") * 5) * 60 / range("T21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "lendemain" ActiveSheet.Shapes.range(Array("Rectangle 45")).Select If range("D4") = "8:00-9:00" And Round(((range("D9").Value) + range("E9") * 5) * 60 / range("D21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "9:" & Round(((range("D9").Value) + range("E9") * 5) * 60 / range("D21")) - 60 If range("D4") = "9:00-10:00" And Round(((range("D9").Value) + range("E9") * 5) * 60 / range("F21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "10:" & Round(((range("D9").Value) + range("E9") * 5) * 60 / range("F21")) - 60 If range("D4") = "10:00-11:00" And Round(((range("D9").Value) + range("E9") * 5) * 60 / range("H21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "11:" & Round(((range("D9").Value) + range("E9") * 5) * 60 / range("H21")) - 60 If range("D4") = "11:00-12:00" And Round(((range("D9").Value) + range("E9") * 5) * 60 / range("J21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "12:" & Round(((range("D9").Value) + range("E9") * 5) * 60 / range("J21")) - 60 If range("D4") = "12:00-13:00" And Round(((range("D9").Value) + range("E9") * 5) * 60 / range("L21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "13:" & Round(((range("D9").Value) + range("E9") * 5) * 60 / range("L21")) - 60 If range("D4") = "13:00-14:00" And Round(((range("D9").Value) + range("E9") * 5) * 60 / range("N21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "14:" & Round(((range("D9").Value) + range("E9") * 5) * 60 / range("N21")) - 60 If range("D4") = "14:00-15:00" And Round(((range("D9").Value) + range("E9") * 5) * 60 / range("P21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "15:" & Round(((range("D9").Value) + range("E9") * 5) * 60 / range("P21")) - 60 If range("D4") = "15:00-16:00" And Round(((range("D9").Value) + range("E9") * 5) * 60 / range("R21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "16:" & Round(((range("D9").Value) + range("E9") * 5) * 60 / range("R21")) - 60 If range("D4") = "16:00-17:00" And Round(((range("D9").Value) + range("E9") * 5) * 60 / range("T21")) > 60 Then Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "lendemain" end sub
Partager