Power Query Problème renommage en-tête - modifier la valeur de la première cellule uniquement

PiwiLeKiwi

XLDnaute Nouveau
Bonjour à tous,
je suis dans la découverte de Power Query donc veuillez m'excuser si certaines questions sont évidentes (j'ai déjà cherché en ligne sans trouver pour mon "problème").

Je dois consolider un fichier qui a TOUJOURS la même trame mais qui m'est envoyé en X versions de la part d'X personnes en une seule base.
J'ai donc décidé d'utiliser Power Query : les fichiers sont assez basiques (une première colonne avec les attributs et les colonnes suivantes avec en première ligne les années (2018,2019,2020,2021) et au milieu de tout ça les données ; donc "utiliser la premières ligne pour les en-têtes" puis dépivotage afin d'avoir toutes les données dans une base (aucun problème pour tout ça).
Mon query fait appel au dossier contenant tous les fichiers (identiques) donc la première colonne de ma base indique le nom du fichier, ma première ligne ressemble donc à cela (la première ligne en gras représente les en-têtes).
étape 1:
Column1Column2Column3Column4Column5Column6Column7
Fichier 1.xlsxnull20182019202020212022

Après remontée de la première ligne j'ai donc ceci
étape 2:
Fichier 1.xlsxcolumn220182019202020212022
Fichier 1.xlsxAttribut 1valeur 1valeur 2valeur 3valeur 4valeur 5

Je dois modifier l'intitulé de la première colonne afin de faire une jointure avec une autre base mais je n'arrive pas à automatiser cette étape sachant que ce ne sera pas forcément "fichier 1" qui apparaitra toujours en premier. => Si c'est "fichier 2.xlsx" qui apparait en premier cela "plante" car cette étape ne fonctionne plus
Code:
#"Colonnes renommées" = Table.RenameColumns(#"Type modifié",{{"Fichier 1.xlsx", "Correspondance"}})


Ai-je la possibilité lors de l'étape 1 de modifier UNIQUEMENT la première cellule de la première colonne pour remplacer "fichier 1.xlsx" par autre chose avant de remonter les en-têtes ? Est-il possible de modifier "par référence" comme on le ferait en VBA (Cells(1,1)) ?
Peut-on sinon modifier l'en-tête par référence et non pas la valeur de l'en-tête ?

Merci par avance de votre aide,
 
Dernière édition:

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Vous pouvez avoir accès à la liste des noms de colonnes par Table.ColumnNames(LaTable) qui vous renvoie une liste de Noms. Vous pouvez donc en extraire l'item que vous voulez et votre étape devenir :

= Table.RenameColumns(#"Type modifié",{{Table.ColumnNames(#"Type modifié"){0}, "Correspondance"}})

Pour plus sophistiqué, joignez un fichier excel avec votre requête ainsi que les explications necessaire.
Seules quelques lignes de données sont nécessaires.

Cordialement
 

Discussions similaires

Réponses
11
Affichages
281

Statistiques des forums

Discussions
312 103
Messages
2 085 314
Membres
102 860
dernier inscrit
fredo67