Bonjour,
débutant en vba, je n'arrive pas à créer un bouton qui active toutes les procédures de toutes les feuilles du fichier.
Mon fichier contient plusieurs feuilles qui contiennent les mêmes procédures (j'ai déjà basculé les procédures de privateSub à Sub).
Chaque feuille est donc à présent construite comme suit :
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 Sub Worksheet_Activate() ThisWorkbook.RefreshAll End Sub Sub Worksheet_SelectionChange(ByVal Target As Range) Dim chemin As String chemin = "'" & ThisWorkbook.Path & "\[marges et prix pour mise à jour tarifs.xlsx]tableau cmup marges'!C1:AN222" For i = 12 To 45 Cells(i, 12).Formula = "=iferror(vlookup((A" & i & "), " & chemin & ",30,false),"""")" Cells(i, 12).Value = Cells(i, 12).Value Next i End Sub
A présent, je voudrais dans la "Feuil1 (page de garde)" créer un bouton qui fasse tourner /active /rafraîchisse toutes les procédures de toutes les feuilles.
J'ai donc créé un bouton dans la "Feuil1 (page de garde)"
Et j'ai entré le code suivant :
Pour les procédures Worksheet_Activate, pas de souci, ça fonctionne il semble.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Sub Bouton1_Cliquer() Call Feuil6.Worksheet_Activate Call Feuil7.Worksheet_Activate Call Feuil6.Worksheet_SelectionChange End Sub
Par contre pour la procédure Worksheet_SelectionChange, il me met une erreur : "Erreur de complilation: Argument non facultatif".
Sauriez-vous me dire comment appeler et activer ce genre de procédure ??
Merci d'avance pour vos lumières !
Partager