Accueil – Le CFO masqué › Forums › Power BI › Power Query – Colonne au format Texte en Date(mois)
- Ce sujet contient 1 réponse, 2 participants et a été mis à jour pour la dernière fois par
Daniel, le il y a 1 année et 4 mois.
-
AuteurMessages
-
2 octobre 2023 à 9 h 58 min #132966
mahieu.franck
ParticipantBonjour,
je suis confronté à un problème… j’ai une colonne nommée pour le moment “Attribut” rapatriée dans power query au format texte avec (Janv, Fev, Mars, Avril etc… jusqu’à Déc) Je souhaite pouvoir exploiter cette colonne afin d’obtenir les mois correspondant soit Janv = 01, Fev = 02 et tout cela au format date afin de pouvoir l’utiliser par la suite dans une table temporelle.Pourriez vous m’aider ? y a t’il une autre solution pour obtenir les mois au format date à partit d’une colonne au format texte.
j’espère que ma question est assez claire.
Merci d’avance pour vos réponses d’expert
2 octobre 2023 à 17 h 32 min #133014Daniel
ParticipantBonjour Mathieu, le Forum,
1ère Solution
1 – Avoir une table, avec les noms des mois comme orthographiés dans tes données (colonne Attribut) et en 2ème colonne, le numéro des mois (1 à 12), chargr cette table dans Power Query
2 – Charger tes données dans Power Query et faire une jointure entre les deux tables sur base du nom du mois, on développera la nouvelle table ainsi obtenue en ne gardant que le numéro du mois et en décochant la case “Utiliser le nom de la colonne d’orgine….”)
let
Source = Excel.CurrentWorkbook(){[Name=”tabRequete2″]}[Content],
#”Type modifié” = Table.TransformColumnTypes(Source,{{“Attribut”, type text}}),
#”Requêtes fusionnées” = Table.NestedJoin(#”Type modifié”, {“Attribut”}, tblListeMois, {“Mois”}, “tblListeMois”, JoinKind.LeftOuter),
DevelopperNumMois = Table.ExpandTableColumn(#”Requêtes fusionnées”, “tblListeMois”, {“Num_Mois”}, {“Num_Mois”}),
AjoutDateDebutMois = Table.AddColumn(DevelopperNumMois, “Date”, each Date.FromText(“01/”& Number.ToText([Num_Mois]) & “/2023”)),
ModificationTypeDonnees = Table.TransformColumnTypes(AjoutDateDebutMois,{{“Date”, type date}})
in
ModificationTypeDonneesSolution 2
Les noms de mois dans tes données sont écrits en entier (Janvier, Février,….), si c’est le cas alors la requête ci-après fera le job
let
Source = Excel.CurrentWorkbook(){[Name=”tabRequete1″]}[Content],
NumeroDuMois = Table.AddColumn(Source, “N_Mois”, each Date.Month(Date.FromText([Attribut]&”1″))),
RenommerColonnes = Table.RenameColumns(NumeroDuMois,{{“Attribut”, “Nom_Mois”}}),
AjoutDateDebutMois = Table.AddColumn(RenommerColonnes, “Date”, each Date.FromText(“01/”& Number.ToText([N_Mois]) & “/2023”)),
ModificationTypeDonnees = Table.TransformColumnTypes(AjoutDateDebutMois,{{“Date”, type date}})
in
ModificationTypeDonnees
En espérant avoir pu t’aider.
Cordialement
Daniel -
AuteurMessages
- Vous devez être connecté pour répondre à ce sujet.