Power Query Remplir une colonne avec le nom des tables

MR.O

XLDnaute Junior
Bonjour,

Je souhaiterais savoir comment récupérer le nom d'une table pour remplir une colonne de ma requête.

Merci d'avance,

Cordialement,

Capture d’écran 2023-02-08 115141.png
 

MR.O

XLDnaute Junior
Bonjour,
Je ne comprends pas trop ce que tu veux...
Une fusion ne suffirait pas?
Un fichier exemple, avec 2 ou 3 tables, et ce que tu désires pourrait nous aider à t'aider... 😉
Bonjour @bhbh,

Je vous joint un exemple pour complété mon explication j'ai mis en colonne G en jaune ce que je voudrais récupérer comme information.

Merci d'avance,

Cordialement,
 

Pièces jointes

  • exemple.xlsx
    24.8 KB · Affichages: 5

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Dans l'onget Accueil dans le groupe 'Combiner' vous avez un bouton Ajouter des requetes, cliquez sur ce bouton et laissez vous guider.
Sinon dans votre Etape, si vos tables ont toutes les mêmes noms de colonne, choisissez en une :
Table.Combine({BAT_011, BAT_023},Table.ColumnNames({BAT_011}))

Ou pour avoir une sélection plus restreinte l'étape ci-dessous et pour exemple ne prendra que les colonnes "BAT" et celles dont le nom commence par "T" :
= Table.Combine({BAT_023, BAT_011},{"BAT"} & List.Select(Table.ColumnNames(BAT_011),each Text.Start(_,1)="T"))
Toutes les fonction M de filtrage de liste sont possibles voir la doc sur les fonctions de List

Vous auriez pu nous faire un exemple correct et non pas avec des sources absentes de notre disque dur, nous obligeant ainsi à reconstruire vos requêtes, c'est pas cool.


Hello @bhbh :)
 

Pièces jointes

  • 1675868031587.png
    1675868031587.png
    6.5 KB · Affichages: 26
  • exemple.xlsx
    24.8 KB · Affichages: 8
Dernière édition:

MR.O

XLDnaute Junior
Bonjour,

Dans l'onget Accueil dans le groupe 'Combiner' vous avez un bouton Ajouter des requetes, cliquez sur ce bouton et laissez vous guider.
Sinon dans votre Etape, si vos tables ont toutes les mêmes noms de colonne, choisissez en une :


Ou pour avoir une sélection plus restreinte l'étape ci-dessous et pour exemple ne prendra que les colonnes "BAT" et celles dont le nom commence par "T" :

Toutes les fonction M de filtrage de liste sont possibles voir la doc sur les fonctions de List

Vous auriez pu nous faire un exemple correct et non pas avec des sources absentes de notre disque dur, nous obligeant ainsi à reconstruire vos requêtes, c'est pas cool.


Hello @bhbh :)
Bonjour @Hasco,

Désolé pour les sources, je ne sais pas comment les enregistrer dans le fichier.
je crois que l'on c'est mal compris, ce que je souhaiterais c'est récupérer le titre de la requête ou table et le mettre dans une colonne personnalisée, je vous joint une copie d'écran avec le visuel.

Merci d'avance,
 

Pièces jointes

  • Capture d’écran 2023-02-08 115141.png
    Capture d’écran 2023-02-08 115141.png
    111.7 KB · Affichages: 59

Amilo

XLDnaute Accro
Bonjour à tous,

Une piste avec le code ci-dessous à mettre dans une nouvelle requête :
VB:
= Record.ToTable(#sections[Section1])

Vous pouvez ensuite filtrer la colonne Name et développer la colonne "Value".

Vous pouvez vous passer alors d'un Table.Combine

Cordialement
 
Dernière édition:

Hasco

XLDnaute Barbatruc
Repose en paix
Re,

Ouvrez le zip ME Exemple.zip ci-joint il contient des fichiers source et un fichier (Mr exemple.xlsx) muni d'une requête faite à partir de l'onglet de ruban "Données/à partir d'un fichier/ à partir d'un dossier
Cela vous délivrera d'avoir à faire une requête pour chaque fichier
Lorsque vous arrivez dans l'affichage des fichiers du dossier faites une sélection des lignes comme ci-dessous

1675880554778.png
,


1675881171554.png

Ensuite ne conservez que les colonnes qui nous serviront

Et cliquez sur les deux flèches basses à droite du titre de la colonne Content
Power query lancera l'assistant et créera différentes requêtes :
1675883162561.png

La requête MR Exemple est la requête que j'ai crée.
Les autres dans le dossier Requêtes d'assistance sont celles crées par Power Query.
prmFichier (binaire) est le paramètre créé par PQ pour passer le contenu de la colonne [Content] de la requête MR Exemple à la fonction Transformer le fichier.

Le deuxième paramètre, prmFeuille (text) est le nom de la feuille à trouver dans le fichier transmis par le paramètre prmFichier et qui est le contenu de la colonne [Name] de la requête "Mr Exemple" (après transformation pour ne conserver que les caractères avant le point : BAT_011.xlsm ->BAT_011 )

La requête Transformer l'exemple de fichier est la seule requête que vous pouvez modifier.
A chaque fois que vous la modifiez PQ mettra à jour la fonction Transformer le fichier) du même nom.
cette dernière est appelée à l'étape Appeler une fonction personnalisée1 de la requête MR Exemple

Dans le fichier joint, vous verrez en A1 (nommé "Dossier") dont se sert la requête MR Exemple pour aller chercher les fichiers. Vérifiez qu'elle contient le bon nom de dossier sinon, faites la recalculer en la revalidant ou mettez en dur votre chemin vers le dossier à traité ou en dur dans l'étape source de la requête.

Cordialement
 

Pièces jointes

  • MR exemple.zip
    33.3 KB · Affichages: 9

Discussions similaires

Réponses
2
Affichages
190

Statistiques des forums

Discussions
312 321
Messages
2 087 266
Membres
103 502
dernier inscrit
talebafia