jipi06
XLDnaute Junior
Bonjour à toutes et tous
J’espère que tout va bien pour vous.
J'utilise un code qui me permet de transférer des fichiers qui sont listés dans une colonne B vers une liste de dossiers qui sont listés dans une colonne A sur le format suivant
Code Utilisé
Sub deb()
Dim Fso As New Scripting.FileSystemObject
Chemin = Workbooks(ActiveWorkbook.Name).Path & "\"
drlg = dernièrelg(Sheets("Transfert"), 2)
Set Fso = CreateObject("scripting.filesystemobject")
With Sheets("Transfert")
On Error Resume Next
For n = 2 To drlg
Set fich = Fso.GetFile(Chemin & "total\" & .Cells(n, 2))
fich.Move (Chemin & .Cells(n, 1) & "\") ' Quand le dossier n'existe pas dans le répertoire cible...il s'arrête
Next
End With
End Sub
Ce code fonctionne très bien, quand Tous les dossiers existent.
En revanche, quand il ne trouve pas de dossier et ben il fait ce qui est écris ...il abandonne...
Je voudrais juste qu'il ne prenne pas en compte l'erreur et qu'il passe à la ligne suivante...c'est peut être un mauvais placement de On Error Resume Next .
Merci de votre aide
Jipi06
J’espère que tout va bien pour vous.
J'utilise un code qui me permet de transférer des fichiers qui sont listés dans une colonne B vers une liste de dossiers qui sont listés dans une colonne A sur le format suivant
Dossier | Fichier |
_AUTREG_2_2206_2020-4-4_18h41_SAS FS2L | AUTREG_2_2206_2020-4-4_18h41_ACO-SAS FS2L.PDF |
Code Utilisé
Sub deb()
Dim Fso As New Scripting.FileSystemObject
Chemin = Workbooks(ActiveWorkbook.Name).Path & "\"
drlg = dernièrelg(Sheets("Transfert"), 2)
Set Fso = CreateObject("scripting.filesystemobject")
With Sheets("Transfert")
On Error Resume Next
For n = 2 To drlg
Set fich = Fso.GetFile(Chemin & "total\" & .Cells(n, 2))
fich.Move (Chemin & .Cells(n, 1) & "\") ' Quand le dossier n'existe pas dans le répertoire cible...il s'arrête
Next
End With
End Sub
Ce code fonctionne très bien, quand Tous les dossiers existent.
En revanche, quand il ne trouve pas de dossier et ben il fait ce qui est écris ...il abandonne...
Je voudrais juste qu'il ne prenne pas en compte l'erreur et qu'il passe à la ligne suivante...c'est peut être un mauvais placement de On Error Resume Next .
Merci de votre aide
Jipi06