Boucle For avec un classeur qui ouvre d'autres classeurs

Signaler
Messages postés
3
Date d'inscription
jeudi 18 juin 2009
Statut
Membre
Dernière intervention
15 novembre 2017
-
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
-
Salut à tous,

J'ai le problème suivant. Sur mon classeur Reporting, je recherche (à l'aide d'une boucle For) les noms des collaborateurs et à chaque fois, le code ouvre le classeur concerné. Le problème est qu'à la prochaine valeur, le code lit les cellules du classeur du collaborateur qui vient d'être ouvert au lieu de lire toujours sur Reporting. J'ai mis une ligne activant à chaque fin de boucle le classeur Reporting mais c'est très long. Y a-t-il une autre manière ?

Voici mon code :

Private Sub Auto_Open()
Application.ScreenUpdating = True
Mon_Fichier = "Reporting Equipe David 2018.xlsm"
Dim CSE As Variant
For i = 4 To Range("A4").End(xlDown).Row
CSE = Range("B" & i).Value
If Range("B" & i).Value = "Total" Then GoTo Fin
Workbooks.Open "\\C:\Reporting\Reporting " & CSE & " 2018.xlsm", Password:=Range("O" & i).Value
ThisWorkbook.Activate

Next i
Fin:
End Sub

1 réponse

Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
18
Bonjour,

Habitue-toi à mettre le nom des classeurs dans lesquels tu agis.
Tu peux passer par des variables

Dim Wb As Workbook
Set Wb = Workbooks.Open("...............")


Par la suite, tu n'as qu'à utiliser cette variable si nécessaire et ThisWorkbook pour référer à ton classeur qui contient les macros de départ.