Bonjour à tous,

Je viens vous voir pour mon problème de macro...

J'ai créé une macro dans un autre module que celui de la macro initiale. J'ai pour chaque personne une sub différente. je voudrais donc dans une boucle pour détailler le cas de chaque personne et appeler chaque macro correspondante au fur et à mesure. La macro de destination a également des arguments... Comment puis-je faire pour appeler cette macro et envoyer les arguments nécessaires?


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
Sub SetVar()
 
Dim C As String
Dim C1 As String
Dim C2 As String
Dim Personne As String
Dim Lamacro As String
Dim var As String
 
C = "C:\...\Temp"
C1 = "C:\Envoi" & " " & Format(Date, "dd") & " " & Format(Date, "mmmm") & " " & Format(Date, "yyyy")
C2 = "C:\...\Automatisation\"
 
Application.DisplayAlerts = False 'On désactive les boites de dialogue
Set Principal = ThisWorkbook
Set Menu = Principal.Sheets("Menu")
 
For i = 5 To 16
 
    If Menu.Cells(i, 3) = "Yes" Then
 
        Personne = Cells(i, 1)
        var = Cells(i, 1) & ".xlsm" ' il existe un fichier pour chaque personne
        Application.ScreenUpdating = False
        Application.EnableEvents = False
        Workbooks.Open Chauff2 & var
        Lamacro = "Module3." & Personne
        Application.Run "Lamacro"(C ,C2)
        Workbooks(var).Save
        Workbooks(var).Close
 
    End If
 
Next 
 
End Sub
Sachant que dans module 3 il y a une sub pour chaque Personne qui a besoin de 2 strings pour fonctionner

merci de votre aide!!