Déplacer des fichiers PDF de plusieurs dossier vers un seul dossier (script VBA)

Résolu
selrach75 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je rencontre un problème concernant le déplacement de fichiers (PDF) provenant de plusieurs dossiers (sous-dossiers) vers un dossier unique.

J'utilise VBA pour faire ce déplacement avec le script ci-dessous :

Sub CopieFichier()
 
'copier fichier (nom différent, emplacement différent)
Dim FichierOriginal As String
Dim FichierCopie As String
 
  Dim numero As Integer
    numero = 2 'Numéro de départ (correspond ici au n° de ligne et au n° de numérotation)
'Destination URL = "https://monserveur.net/sites/mon-site/Shared Documents/mon-dossier/test.txt"
' => il est nécessaire de le transformer de manière suivante:
 
    While numero <= 15000 'TANT QUE la variable numero est <= 12, la boucle est répétée
   
FichierOriginal = Cells(numero, 3)
FichierCopie = "C:\Users\Michel.Martin\OneDrive - Tesla\modely\Migration\fr\Batch_5\Batch_5_fr\" & Cells(numero, 1).Value
 
FileCopy FichierOriginal, FichierCopie
 
        numero = numero + 1 'Le numéro est augmenté de 1 à chaque boucle
    Wend
 
 
End Sub

Cependant je rencontre des erreurs à cause de caractères non pris en compte comme des lettres Russes.
Est-ce possible d'adapter le script pour "sauter" l'erreur et/ou ajouter un colonne dans mon fichier qui annonce si le fichier a bien été copier dans le dossier unique?

Merci d'avance
A voir également:

2 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, merci d'utiliser les balises de code (et de préciser "basic pour du vba) quand tu partages du code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
une suggestion, non testée (qui ajoute ok ou NOK en colonne D):
Sub CopieFichier()
 
'copier fichier (nom différent, emplacement différent)
Dim FichierOriginal As String
Dim FichierCopie As String
Dim numero As Integer
    numero = 2 'Numéro de départ (correspond ici au n° de ligne et au n° de numérotation)
'Destination URL = "https://monserveur.net/sites/mon-site/Shared Documents/mon-dossier/test.txt"
' => il est nécessaire de le transformer de manière suivante:
 
On Error GoTo copienok
While numero <= 15000 'TANT QUE la variable numero est <= 12, la boucle est répétée
    FichierOriginal = Cells(numero, 3)
    FichierCopie = "C:\Users\Michel.Martin\OneDrive - Tesla\modely\Migration\fr\Batch_5\Batch_5_fr\" & Cells(numero, 1).Value
    FileCopy FichierOriginal, FichierCopie
    Cells(numero, 4) = "ok"
finboucle:
    numero = numero + 1 'Le numéro est augmenté de 1 à chaque boucle
Wend
On Error GoTo 0
Exit Sub
copienok:
Cells(numero, 4) = "NOK"
Resume finboucle
End Sub
0
selrach75 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Merci yg_be ça fonctionne parfaitement ;)
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > selrach75 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
parfait, peux-tu alors marquer la discussion comme résolue?
0