Selectionner et copier des fichiers jpg depuis une liste excel

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

pouloucarine

XLDnaute Nouveau
Bonjour,

j'ai une un fichier excel dans lequel dans une colonne, j'ai une liste d'ean (format nombre)

Dans un répertoire fixe de mon réseau, j'ai des milliers de fichiers .jpg intitulé ean.jpg

J'ai régulièrement besoin de pouvoir sélectionner à partir d'une liste restreinte d'ean les fichiers ean.jpg correspondant et les copier dans un répertoire de mon choix (support amovible possible)

Aujourd'hui, je perds un temps fou à faire cette recherche en manuel, et je souhaiterai pouvoir faire une macro qui permette cette automatisation.

Est-ce possible ?

Merci de votre aide

Cordialement
 
Re : Selectionner et copier des fichiers jpg depuis une liste excel

Bonjour pouloucarine, bienvenue sur XLD,

Quant on connaît FileCopy c'est élémentaire :

Code:
Sub CopierFichiers()
Dim r As Range, DosSource$, DosDestin$, ext$
Set r = [A2:A20] 'plage avec les noms des fichiers (sans extension)
DosSource = "C:\Fichiers JPG\" 'à adapter
DosDestin = "C:\Fichiers JPG sélectionnés\" 'à adapter
ext = ".jpg"
Application.DisplayAlerts = False
On Error Resume Next
MkDir DosDestin 'crée le dossier s'il n'existe pas
For Each r In r
FileCopy DosSource & r & ext, DosDestin & r & ext
Next
End Sub
A+
 
Re : Selectionner et copier des fichiers jpg depuis une liste excel

Re,

Inscription de "OK" en colonne B si la copie est faite et message à la fin :

Code:
Sub CopierFichiers()
Dim P As Range, DosSource$, DosDestin$, ext$, c As Range
Set P = [A2:A20] 'plage avec les noms des fichiers (sans extension)
DosSource = "C:\Fichiers JPG\" 'à adapter
DosDestin = "C:\Fichiers JPG sélectionnés\" 'à adapter
ext = ".jpg"
Application.DisplayAlerts = False
On Error Resume Next
MkDir DosDestin 'crée le dossier s'il n'existe pas
For Each c In P
  FileCopy DosSource & c & ext, DosDestin & c & ext
  c(1, 2) = IIf(Dir(DosDestin & c & ext) = "", "", "OK")
Next
MsgBox Application.CountA(P.Offset(, 1)) & " fichiers copiés"
End Sub
A+
 
Re : Selectionner et copier des fichiers jpg depuis une liste excel

Re,

Sur Excel 2003 Application.DisplayAlerts = False est inutile, pas testé sur Excel 2010.

Edit : c'est inutile aussi sur Excel 2010.

A+
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour