Fusion de fichiers journaliers

Bonjours,

Je cherche à fusionner des fichiers journaliers sur environ 7 mois. J'ai essayé de trouver des solution avec Power Query et en VBA mais je n'arrive pas au résultat attendu.

Chacun de mes fichiers sont contenus dans un même dossier et leur nom ressemble à JBD_JOURNALIER_O1Jun2021080003.xls,

JBD_JOURNALIER_O2Jun2021080005.xls

Je souhaite copier les données d'une colonne (la même pour chaque fichier) pour les regrouper dans un fichier de synthèse sur la même feuille de classeur. Il y a environ 200 lignes de données à copier de cette colonne.

Si quelqu'un a une idée de code VBA ou autre je suis intéressé cela peut me faciliter grandement la vie!

Voici en pièces jointes 2 fichiers journaliers exemple avec beaucoup moins de lignes ainsi qu'un fichier synthèse (le résultat attendu) qui pourrait vous permettre de visualiser mon problème.

Je vous remercie d'avance de vos réponses!

11fusion-fichier.zip (22.65 Ko)

Hello,

Sub recup()

Dim Chemin As String, Fichier As String
Dim wkb_source As Workbook, wkb_cible As Workbook
Dim rg_cible As Range
Dim F_ligne_cible As Long, last_ligne_cible As Long, last_col_source As Long

Chemin = "C:\toto\c\"
Fichier = Dir(Chemin & "*.xlsx")

Set wkb_source = ThisWorkbook

F_ligne_cible = 4

Do While Len(Fichier) > 0
    Set wkb_cible = Workbooks.Open(Chemin & Fichier)
    last_ligne_cible = wkb_cible.Sheets(1).Cells(Rows.Count, "J").End(xlUp).Row
    Set rg_cible = wkb_cible.Sheets(1).Range("J" & F_ligne_cible & ":J" & last_ligne_cible)
    last_col_source = wkb_source.Sheets(1).Cells(F_ligne_cible, wkb_source.Sheets(1).Columns.Count).End(xlToLeft).Column + 1
    rg_cible.Copy wkb_source.Sheets(1).Cells(F_ligne_cible, last_col_source)
    Application.CutCopyMode = False
    wkb_cible.Close False
    Set rg_cible = Nothing
    Fichier = Dir()
Loop

Set wkb_cible = Nothing
Set wkb_source = Nothing
End Sub

Bonjour,

Une proposition Power Query ?

Cdlt.

7fusion-fichier.zip (33.47 Ko)

Bonjour Rag02700,

Merci de votre réponse cependant lorsque j'exécute le code rien ne se passe j'ai modifié le chemin du dossier mais rien ne s'affiche.

Bonjour Jean-Eric,

Merci de votre réponse, j'ai tenté de faire avec Power Query mais à partir de l'étape Invoked Custom Function j'ai des erreurs et cela n'aboutit pas

Bonjour,

J'ai corrigé l'anomalie. Oups !...

Cdlt.

12fusion-fichier.zip (33.46 Ko)

Re-bonjour Jean-Eric,

Malheureusement cela ne marche toujours pas. J'ai un bandeau jaune qui affiche "Formula.Firewall : Requête « Import » (étape « Source ») référence d'autres requêtes ou étapes et ne peut donc pas accéder directement à une source de données. Reconstruisez cette combinaison de données."

Il y a il me semble un problème au niveau de l'import. Je n'arrive pas à aller sélectionner mon dossier.

Cordialement.

Re,

Tu dois modifier tes options de confidentialité.

Dans l'Editeur Power Query : Fichier, Options et Paramètres, Options de requête, Confidentialité.

capture d ecran 2021 06 29 153733
Rechercher des sujets similaires à "fusion fichiers journaliers"