Fusionner des fichiers excel en un seul (macro)

Fermé
CorentinMLG Messages postés 2 Date d'inscription lundi 24 juin 2019 Statut Membre Dernière intervention 24 juin 2019 - 24 juin 2019 à 11:25
CorentinMLG Messages postés 2 Date d'inscription lundi 24 juin 2019 Statut Membre Dernière intervention 24 juin 2019 - 24 juin 2019 à 14:20
Salut à tous,
débutant en codage, je suis à la recherche d'une macro excel. Je n'ai rien trouvé sur internet qui me corresponde, du coup je m'en remet à votre aide:

Alors, j'ai un tableau dans un premier fichier qui fait environ 1600 lignes et 28 colonnes, avec des nouvelles lignes qui s'ajoutent tous les jours. En parallèle de ce tableau, il y a un fichier excel différent pour chacune des lignes, avec 5 feuilles par fichier.
Les données dans le tableau et les fichiers sont différentes, et j'aurais aimé récupérer des données de ces fichiers annexes (mais pas toutes) pour les inclure dans de nouvelles colonnes du tableau original, de manière automatique pour les lignes existantes comme pour les futures.
Une autre difficulté est que les fichiers annexes n'ont pas tous le même format, c'est à dire que ils n'ont pas tous le même nombre de lignes/colonnes de données à récupérer. De plus, ils sont tous répartis dans différents dossiers eux-mêmes dans un autre dossier.

On a bien le lien entre le fichier principal et ses annexes, grâce à un numéro d'index (idx).

J'ai une première piste pour cette macro, mais vu que je suis une bille en codage ça me parait compliqué à réaliser de moi même:
"Je pense que j'aurais essayé de faire une macro dans le fichier principal avec un algorithme du style :
- boucle sur la colonne idx
- ouvrir le fichier annexe au chemin "C:\..." + Index + ".xlsx"
- Récupérer dans ce fichier la dernière ligne non vide des colonnes qui t'intéressent, ex. pour le Surcout dans la feuille "Impacts" : .Cells(.Rows.Count, 10).End(xlUp).Row pour récupérer le numéro de la dernière ligne non vide de la colonne 10 (= colonne J)
- Mettre à jour ton tableau principal avec le contenu de la cellule .Cells(DerniereLigneNonVide, TaColonne)"

Voila voila, tout est dit. Si je me suis mal exprimé et que vous avez des questions, hésitez pas.

Merci la commu!

Corentin
A voir également:

2 réponses

Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776
Modifié le 24 juin 2019 à 12:14
Bonjour,

« un premier fichier qui fait environ 1600 lignes [...]. En parallèle de ce tableau, il y a un fichier excel différent pour chacune des lignes »
Ça fait 1600 fichiers de 5 feuilles soit 8000 feuilles à analyser, c'est bien ça ?

0
CorentinMLG Messages postés 2 Date d'inscription lundi 24 juin 2019 Statut Membre Dernière intervention 24 juin 2019
Modifié le 24 juin 2019 à 14:40
Bonjour Patrice,
Oui c'est tout à fait ça sauf que seules 2 feuilles sur les 5 sont utiles, il y aurais donc "seulement" 3200 feuilles à analyse, puis les futures feuilles
0