XL 2016 Extraire des données d'un fichier CSV vers un fichier Excel avec critères

muzan93

XLDnaute Nouveau
Bonjour le Forum,

J'aurai besoin de vous étant encore débutant dans le domaine du VBA, je voudrai réaliser une macro mais je n'ai aucune idée de comment y parvenir malgré des recherches sur le net.

La macro que je souhaiterai réaliser doit extraire des données d'un fichier CSV et les coller dans un fichier Excel avec des critères.

Voici le fichier CSV en question :

screen_csv.PNG


Et voici le fichier Excel :

screen_excel.PNG


Comme vous pouvez le constater le seul lien entre ces deux fichiers est la présence d'alias. Il faut donc ce servir de ces alias pour l'extraction, enfin c'est ce que je propose comme idée ^^.

L'extraction devrait suivre ce processus :

Pour le tableau Configuration :

Tout d'abord, sur le fichier CSV, on identifie l'alias des numéros montés "ZzNumMontAlias" (ex : ZzNumMontCXN3), puis on va se placer sur la ligne d'en-dessous de l'alias identifié et on va enregistrer le contenu dans une variable intermédiaire (par exemple si on détecte l'alias ZzNumMontCXN3, on enregistre la ligne en-dessous de cet alias donc 4134) et on colle la valeur enregistrée dans le fichier Excel au bon endroit, c-à-d dans la colonne "Num monté" à colonne F et à la ligne de l'alias identifié (dans mon exemple, on collera du coup le 4134 à la colonne F, ligne 7).

On fait la même chose pour les alias des références montés du fichier CSV "ZzRefMontAlias" (ex : ZzRefMontCXN3) que l'on colle dans le fichier Excel au bon endroit (dans mon exemple, on collera du coup le 4351 à la colonne G, ligne 7).

Pour le tableau Masses :

On fait exactement la même manipulation que le tableau Configuration sauf qu'on identifie dans le fichier CSV l'alias
valeurs des masses "ZzValAlias" ( ex : ZzValMasse1) que l'on colle dans le fichier Excel au bon endroit c-à-d dans la colonne F et à la ligne de l'alias identifié (ex : si on identifie ZzValMasse1 sur le CSV on collera l'information dans le fichier Excel à la colonne F de la ligne 19).

Bien sûr, je voudrai faire une boucle sur l'ensemble des alias des deux tableaux afin que les informations du fichier CSV se reportent dans le tableau automatiquement.

N'hésitez pas à me poser des questions afin de rendre claire mon sujet, je répondrai le plus rapidement possible :)

Je vous remercie d'avance et bonne journée !

PS : J'ai joint les deux fichiers Excel et CSV.
 

Pièces jointes

  • extraction_test.zip
    13.4 KB · Affichages: 16

Hasco

XLDnaute Barbatruc
Repose en paix
Bonsoir,

Voici une solution simple par PowerQuery (données/ A partir d'un fichier text/CSV) et formules :
Ne pas oublier de changer le chemin vers le fichier dans l'étape source de la requête "CSV_Muzan93"

Cordialement
 

Pièces jointes

  • Excel_Muzan93.xlsx
    37.9 KB · Affichages: 18

Discussions similaires

Statistiques des forums

Discussions
315 090
Messages
2 116 102
Membres
112 661
dernier inscrit
ceucri