Problème avec boucle ouverture fichier

Jacques25

XLDnaute Occasionnel
Bonjour à tous,

j'ai un code qui me permet d'ouvrir 3 fichiers différents se trouvant dans le même dossier afin d'y copier des données communes. Pour cela j'ai créé une boucle et ça me donne une erreur juste au niveau de l'ouverture du fichier.

Je vous joins le début de mon code si toutefois vous pouvez m'éclairer.

Merci à tous.

Sub Macro1()
lien = "\\serveur\1\2\3"
fichier1 = "Qual V4.xls"
fichier2 = "Log V4.xls"
fichier3 = "analyse.xls"
Set Source = Workbooks("Base de Données.xlsm").Worksheets("Feuil1")
nbl = Source.[D3].End(xlDown).Row - 2

'Passage en calcul manuel
With Application
.Calculation = xlManual
End With

'Boucle sur les 3 fichiers
For i = 1 To 3

'Ouverture du fichier
Workbooks.Open (lien & "\" & fichier & i) <== c'est la que ça coince...
Set cible = Workbooks(fichier & i).Worksheets("adresse")

'Suppression protection et RAZ cellules de destination
cible.Unprotect Password:="mdp"
cible.Range("A3:Y1000").ClearContents

'Copie des données de source vers fichiers cibles
Source.[A3].Resize(nbl, 25).Copy Destination:=cible.[A3]

...

Jacques
 

Jacques25

XLDnaute Occasionnel
Re : Problème avec boucle ouverture fichier

Bonjour Pierrejean,

Merci pour ta réponse, j'ai essayé mais il m'indique le message suivant :

\\serveur\1\2\3\fichier1 n'existe pas.

J'arrive pas à trouver la bonne syntaxe pour que fichier1 reprenne le vrai nom de mon fichier.

Si d'autres idées je suis preneur sinon j'enlèverai ma boucle... tant pis

Jacques
 

Pierrot93

XLDnaute Barbatruc
Re : Problème avec boucle ouverture fichier

Bonjour Jacques, PierreJean:)

une autre approche comme ceci
Code:
Dim lien As String, fichier(1 To 3), i As Integer
lien = "\\serveur\1\2\3"
fichier(1) = "Qual V4.xls"
fichier(2) = "Log V4.xls"
fichier(3) = "analyse.xls"
Set Source = Workbooks("Base de Données.xlsm").Worksheets("Feuil1")
nbl = Source.[D3].End(xlDown).Row - 2

'Passage en calcul manuel
With Application
.Calculation = xlManual
End With

'Boucle sur les 3 fichiers
For i = 1 To 3

'Ouverture du fichier
Workbooks.Open (lien & "\" & fichier(i))

bon après midi
@+
 

Discussions similaires

Statistiques des forums

Discussions
311 711
Messages
2 081 786
Membres
101 817
dernier inscrit
carvajal