Recherche de dossiers à partir d'une base de données excel et copie coller dans un autre dossier

cheicky

XLDnaute Nouveau
Bonjour! J'ai un petit souci. J'aimerai à partir d'une liste de données sur excel, faire une recherche dans un dossier précis et s'il trouve le dossier correspondant au nom de la cellule sur excel, qu'il fasse une copie du dossier et le colle dans un autre dossier.
Je joins un début d'excel. En gros ces éléments listés en colonne A (du fichier excel joint) aurait des dossiers enregistrés dans mon disque.

Serait-il possible?

Dans l'attente de vous lire :)
 

Pièces jointes

  • Classeur1.xlsx
    8.9 KB · Affichages: 6

Temjeh

XLDnaute Accro
Supporter XLD
Bonjour
Si j'ai saisis ton problème

En premier j'ai enlevé toute les espaces superflus à la fin des tes noms en colonne A!
Certain on un espace d'autre deux ...pas très bon.

Fait-toi une liste de validation (qui liste la col A) en F3

Sous un bouton:

On Error GoTo fin
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.CopyFile "C:\Users\claud\Desktop\Dossier_1\" & Range("F3") & ".xlsx", "C:\Users\claud\Desktop\Dossier_2\", OverwriteExisting
Exit Sub
fin:
MsgBox "Fichier inexistant"

Juste changer les chemins et l'extension si ce n'est pas du XLSX
A+
 

Pièces jointes

  • Base.xlsm
    19.9 KB · Affichages: 7
Dernière édition:

cheicky

XLDnaute Nouveau
Je te remercie pour ton retour :)

Super l'idée de la liste de validation. (Petite parenthèse : les espaces dans le nom des éléments ne sont pas fortuits, c'est comme ça qu'ils sont renseignés dans la base et je suis obligé de les garder).

J'ai essayé et adapté ton code (chemins) mais il ne retrouve jamais et ne fait pas de copie et donc affiche toujours fichier inexistant.

Et en fait les dossiers des éléments contiennent différents fichiers (pptx, tif) et j'aimerai copier l'ensemble du dossier (par rapport aux extensions?).
 

Temjeh

XLDnaute Accro
Supporter XLD
Salut

Pas certain. Tu as besoin des espaces superflus à la fin des tes noms?

Évidemment j'y ai enlevé les espaces superflus à la fin.
Donc le code cherche un nom inexistant.
C'est surement pour cela que ça qu'il ne les retrouvent.

Voici une idée avec tes noms exactes.
En colonne B tu doit mettre l'extension des fichiers.
Choisir l'extension dans ta nouvelle liste en F3.
Aussi fonctionne pour les xlsx mais pour les autres, pas certain.

A+

Set objFSO = CreateObject("Scripting.FileSystemObject")
On Error GoTo fin
For i = 1 To Range("A65000").End(xlUp).Row
If Range("B" & i) = Range("F3") Then
objFSO.CopyFile "C:\Users\claud\Desktop\Dossier_1\" & Range("A" & i) & "." & Range("F3"), "C:\Users\claud\Desktop\Dossier_2\", OverwriteExisting
End If
Next i

Exit Sub
fin:
MsgBox "Fichier inexistant"
 

Pièces jointes

  • Base.xlsm
    19.9 KB · Affichages: 6

cheicky

XLDnaute Nouveau
Salut,


En fait j'ai compris le souci. Ton code est parfait lorsque j'ai directement mon fichier avec l'extension quelconque directement dans le dossier source que j'indique.

Le seul souci cst qu'à mon niveau, j'ai besoin de faire une recherche dans un dossier ensuite dans le sous dossier qui porte le nom de la cellule choisie et enfin copier INTEGRALEMENT ce sous dossier (qui lui contient un powerpoint et des plans d'extensions TIF mais ces éléments ne sont pas exactement au nom de ma cellule choisie).


Merci pour ton aide en tout cas :)

Si tu comprends mieux mon souci et que t'as besoin d'autres éléments fais le moi savoir (même un contact pour qu'on s'appelle).

Te remercie encore ;)
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
315 098
Messages
2 116 189
Membres
112 679
dernier inscrit
Yupanki