Bonjour à tous !
Me voilà aujourd'hui bien embèter...
J'avais un formulaire sur lequel, selon la configuration de la pièce, je masquais certaines lignes.
J'ai donc pas moins de 350 lignes qui peuvent être ou non masqués.
Ca ca marche. Par exemple (1/5e du code environ...)
Le soucis...
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 If ComboBox5.ListIndex = 0 Then 'Oui Worksheets("PV").Activate Range("n113,n121,n141,n162,n403,n422").Value = "" ElseIf ComboBox5.ListIndex = 1 Then 'Non Worksheets("PV").Activate ActiveSheet.Shapes("Group 407").Delete Cells(106, 12).Clear Range("115:118,123:125,143:152,164:183,210:215,229:235,397:400,405:410,424:433,437:442").Select Selection.EntireRow.Hidden = True Range("n113,n121,n141,n162,n208,n395,n403,n422,n435").Value = "Sans objet" End If If ComboBox6.ListIndex = 0 Then 'Oui Worksheets("PV").Activate Range("n127,n185,n272,n288,n298,n372").Value = "" ElseIf ComboBox6.ListIndex = 1 Then 'Non Worksheets("PV").Activate Range("129:139,187:202,236:245,249:250,274:278,282:286,288:296,301:307,311:322,344:347,354:357,359:360,374:375,379:382,385:393,397:400,414:420").Select Selection.EntireRow.Hidden = True Range("n127,n185,n272,n288,n298,n350,n372,n395,n412").Value = "Sans objet" End If
Dans mon formulaire, j'ai été obligé de rajouter 5 lignes sous la ligne 176...
Donc, si je lance ma macro dans l'état, je vais masquer des lignes qui n'auraient pas du être masqués... et il va me rester des lignes qui auraient du être masqués et qui ne le sont pas...
Ma macro est décalée de 5 lignes à partir de la 176...
J'ai bien pensé relire tout le code, et ajouter 5 à toutes les lignes > 176, mais c'est lourd et source d'erreurs...
Y'a pas un moyen pour que les codes "numéro de ligne" se décalent seul quand j'insert des lignes dans le classeur ?
Merci pour vos réponses.
Partager