Copier-coller fichiers à partir listing.txt [Résolu/Fermé]

Signaler
Messages postés
694
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
10 août 2020
-
Messages postés
538
Date d'inscription
vendredi 20 mai 2011
Statut
Membre
Dernière intervention
8 janvier 2018
-
Salut,

J'ignore si ça peut exister mais je recherche une solution logiciel très ouverte qui permette de manipuler des fichiers de façon pratique !

Bon, je vous explique ça un peu plus concrètement ! Je fais de gros travaux de composition à partir de listes de photos et j'essaye de trouver des astuces afin d'améliorer mon temps de travail.

Régulièrement, je dois faire cette manipulation : j'ai un ensemble de plusieurs milliers de fichiers jpg dans un dossier que je nommerais "dossier A". A côté de ça, dans un txt, j'ai une liste de 300 noms de fichiers jpg. Celle liste m'indique les fichiers à sélectionner dans mon dossier A afin de les isoler dans un dossier vierge que je nommerais "dossier B".

La sélection manuelle des mes fichiers jpg dans le dossier A pouvant parfois prendre beaucoup de temps, je me demandais s'il existe des logiciels qui permettent ce genre de manipulation ?

Je suis intéressé par toute l'aide, quelle qu'elle soit, que vous pourrez m'apporter ! (-:

3 réponses

Messages postés
12251
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
17 mars 2021
2 606
Salut,
Si tu as Excel...
Le fichier qu'il te faut

!!!! Cette procédure contient un Kill!!! A tester donc sur une copie des fichiers et/ou des répertoires!!! SAUVEGARDEZ AVANT VOS DONNEES !!!

Adaptation possible :
Ce fichier ne fera que déplacer tes fichiers, sans les couper. Si tu veux les supprimer du répertoire source au fur et à mesure, depuis le classeur tape ALT+F11, tu va voir ce code :
Sub DeplacerFichiers() 
Dim objOFS As Variant 
Dim RepSource As String, RepDest As String, NomFichier As String 
Dim Lig As Long, DrLig As Long 

RepSource = Cells(1, 2) 
RepDest = Cells(2, 2) 
Set objOFS = CreateObject("Scripting.FileSystemObject") 
DrLig = Range("B" & Rows.Count).End(xlUp).Row 
For Lig = 3 To DrLig 
    NomFichier = Cells(Lig, 2) 
    If (objOFS.FileExists(RepSource & "/" & NomFichier)) Then 
        Cells(Lig, 3) = "oui" 
        objOFS.CopyFile RepSource & "/" & NomFichier, RepDest & "/" & NomFichier 
        'Kill RepSource & "/" & NomFichier 
    Else 
        Cells(Lig, 3) = "Fichier non trouvé dans le répertoire source" 
    End If 
Next 
Set objOFS = Nothing 
End Sub

supprime juste l'apostrophe (') au début de la ligne 'Kill RepSource & "/" & NomFichier

Utilisation :
1- ouvre le fichier / Activer les macros
2- En B1 indique le chemin d'accès complet de ton répertoire source
3- En B2 indique le chemin d'accès complet de ton répertoire destination
4- De B3 à Bxxx indique les noms de tes fichiers avec l'extension (tu peux copier/coller ces noms depuis ton fichier .txt)
5- ALT+F8, choisir "DeplacerFichiers" et cliques sur "Exécuter"

Cordialement,
Franck P
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
694
Date d'inscription
mercredi 14 avril 2004
Statut
Membre
Dernière intervention
10 août 2020
63
Pijaku, honnêtement, je ne croyais pas trop trouver une solution aussi rapidement mais je crois que tu me sauves la mise ! J'ai testé ton fichier et ça marche au poil !

Un grand merci à toi, tu me retires une belle épine du pied ! (-;
Messages postés
12251
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
17 mars 2021
2 606
ça fait plaisir!
De rien et ...
A+
Messages postés
538
Date d'inscription
vendredi 20 mai 2011
Statut
Membre
Dernière intervention
8 janvier 2018
97
En message privé, je crois, je t'avais envoyé une appli, je sais pas si tu l'avais regardé...