Extraction de deux sur plusieurs fichiers identiques

  • Initiateur de la discussion Initiateur de la discussion Jean-Marc
  • Date de début Date de début

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 !

J

Jean-Marc

Guest
Bonjour

Je désire savoir comment je peux extraire deux champs sur
plusieurs fichiers identiques.

J'ai un fichier par client et chaque fichier est nommé avec le nom du client, dans ce fichier j'ai 3 feuilles, exemple base de données (info sur le client),
devis et contrat.

Je voudrais extraire de ses 103 fichiers identiques deux
champs. Comment puis-je faire pour faciliter l'extraction
sans être obligé d'ouvrir les 103 fichiers.

Merci pour votre aide

Jean-Marc
 
Hello,

Si tu connais la liste de tes clients et que les noms sont identiques, tu peux peut être concatener différentes infos. Par exemple, sur les lignes tu indiques les clients et en colonne les feuilles et cellules. Tu concatenes les 2 pour avoir qlq chose du style : 'C:\[Client X.xls]Devis'!$A$1. Formule que tu peux alors copier.

Bon courage...

Ju
 
Merci pour ta répondre

Malheureusement chaqu'un de mes fichiers sont nommés au nom du client. J'ai utilisé une formule (FileSearch) pour extraire la liste des fichiers et pour m'extraire deux cellule, exemple Feuil1 R15C3 = C15 et R15C5 = E15. mais dans ma liste je reçoit uniquement la première colonne (A) le nom des fichiers. La colonne B et C me donent comme info #REF!.

Ci-dessous la formule:

Sub Bouton1_QuandClic()
Dim fso As Object, Dossier As Object, NomDossier
Dim Files As Object, File As Object, i As Integer
Set fso = CreateObject("Scripting.FileSystemObject")
NomDossier = "T:\Dossiers_clients"
If NomDossier = "" Then Exit Sub
Set Dossier = fso.getfolder(NomDossier)
Set Files = Dossier.Files
If Files.Count <> 0 Then
For Each File In Files
Fichier = File.Name
x = x + 1
Range("A" & x) = Fichier
Range("B" & x) = ExecuteExcel4Macro _
("'" & NomDossier & "\[" & Fichier & "]Feuil1'!R15C3")
Range("C" & x) = ExecuteExcel4Macro _
("'" & NomDossier & "\[" & Fichier & "]Feuil1'!R15C5")
Next
End If
End Sub

Aurais-je une erreur dans mon code?

Merci pour ton aide

@plus Jean-Marc
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
2
Affichages
634
Retour