Bonjour,
J'ai un UserForm permettant de sélectionner le ou les onglet(s) Mois que l'on souhaite imprimer.
J'ai essayé de faire une boucle afin d'améliorer le code ci-dessous, car il contient beaucoup trop de GoTo (bien que cela fonctionne ainsi).
Selon si le mois comporte 31, 30 ou 28(29) jours cela affiche et masque certaines colonnes
Si quelqu'un à une idée je suis preneur. Je suis débutant dans en programmation.
Merci d'avance et salutation
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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126 Private Sub Bouton_Imprimer_Click() If CB_1.Value = True Then UnprotectSheet Worksheets("Janvier").Range("CG:CR").EntireColumn.Hidden = False Worksheets("Janvier").PrintOut 'PrintPreview Worksheets("Janvier").Range("CM:CR").EntireColumn.Hidden = True ProtectSheet Else GoTo Mois2 End If Mois2: If CB_2.Value = True Then UnprotectSheet Worksheets("Février").Range("CG:CR").EntireColumn.Hidden = False Worksheets("Février").PrintOut 'PrintPreview Worksheets("Février").Range("CG:CR").EntireColumn.Hidden = True ProtectSheet Else GoTo Mois3 End If Mois3: If CB_3.Value = True Then UnprotectSheet Worksheets("Mars").Range("CG:CR").EntireColumn.Hidden = False Worksheets("Mars").PrintOut 'PrintPreview Worksheets("Mars").Range("CM:CR").EntireColumn.Hidden = True ProtectSheet Else GoTo Mois4 End If Mois4: If CB_4.Value = True Then UnprotectSheet Worksheets("Avril").Range("CG:CR").EntireColumn.Hidden = False Worksheets("Avril").PrintOut 'PrintPreview Worksheets("Avril").Range("CL:CR").EntireColumn.Hidden = True ProtectSheet Else GoTo Mois5 End If Mois5: If CB_5.Value = True Then UnprotectSheet Worksheets("Mai").Range("CG:CR").EntireColumn.Hidden = False Worksheets("Mai").PrintOut 'PrintPreview Worksheets("Mai").Range("CM:CR").EntireColumn.Hidden = True ProtectSheet Else GoTo Mois6 End If Mois6: If CB_6.Value = True Then UnprotectSheet Worksheets("Juin").Range("CG:CR").EntireColumn.Hidden = False Worksheets("Juin").PrintOut 'PrintPreview Worksheets("Juin").Range("CL:CR").EntireColumn.Hidden = True ProtectSheet Else GoTo Mois7 End If Mois7: If CB_7.Value = True Then UnprotectSheet Worksheets("Juillet").Range("CG:CR").EntireColumn.Hidden = False Worksheets("Juillet").PrintOut 'PrintPreview Worksheets("Juillet").Range("CM:CR").EntireColumn.Hidden = True ProtectSheet Else GoTo Mois8 End If Mois8: If CB_8.Value = True Then UnprotectSheet Worksheets("Août").Range("CG:CR").EntireColumn.Hidden = False Worksheets("Août").PrintOut 'PrintPreview Worksheets("Août").Range("CM:CR").EntireColumn.Hidden = True ProtectSheet Else GoTo Mois9 End If Mois9: If CB_9.Value = True Then UnprotectSheet Worksheets("Septembre").Range("CG:CR").EntireColumn.Hidden = False Worksheets("Septembre").PrintOut 'PrintPreview Worksheets("Septembre").Range("CL:CR").EntireColumn.Hidden = True ProtectSheet Else GoTo Mois10 End If Mois10: If CB_10.Value = True Then UnprotectSheet Worksheets("Octobre").Range("CG:CR").EntireColumn.Hidden = False Worksheets("Octobre").PrintOut 'PrintPreview Worksheets("Octobre").Range("CM:CR").EntireColumn.Hidden = True ProtectSheet Else GoTo Mois11 End If Mois11: If CB_11.Value = True Then UnprotectSheet Worksheets("Novembre").Range("CG:CR").EntireColumn.Hidden = False Worksheets("Novembre").PrintOut 'PrintPreview Worksheets("Novembre").Range("CL:CR").EntireColumn.Hidden = True ProtectSheet Else GoTo Mois12 End If Mois12: If CB_12.Value = True Then UnprotectSheet Worksheets("Décembre").Range("CG:CR").EntireColumn.Hidden = False Worksheets("Décembre").PrintOut 'PrintPreview Worksheets("Décembre").Range("CM:CR").EntireColumn.Hidden = True ProtectSheet End If Reset_Imprimer_Mois Worksheets("2018").Bouton_Menu = True Imprimer_Mois.Hide End Sub
Partager