Power Query - Colonne à séparer (expandall?)

Bonjour à tous,

J'ai fais des recherches sur le cas suivant, mais sans succès.

J'aimerais importer un XML dans Excel via Power Query.

Dans le screenshot de l'étape 1, voici ce que j'obtiens : 2 colonnes (Node et Table)

Pour avoir toutes les colonnes du XML, qui sont cachées dans la colonne Table, je dois cliquer sur l'icone avec les deux flèches à côté du titre de la colonne "Table" pour développer toutes les colonnes (résultat dans étape2.gif)

Malheureusement, j'ai encore des colonnes vides, pour lesquelles, apparait seulement la valeur "Table", et pour lesquelles je dois aussi développer manuellement (voir étape3.gif).

Y'a-t-il un moyen pour que tout se développe d'un coup, avec du code M ou autre, sans que je doive le faire manuellement ?

Merci et bonne journée,

Julien

etape3 etape1 etape2

Bonjour

as-tu regardé le code M généré par Power Query lors du développement des tables ?

peux-tu nous mettre ici en pièce jointe ton exemple ?

Bonjour JMD,

Oui j'ai essayé le code M, mais je ne m'y connais pas assez encore, mais suis très intéressé à essayer de comprendre comment faire.

Avant l'étape 1, j'ai le code suivant :

let
    Source = Xml.Tables(Web.Contents("source du xml"))
in
    Source

Quand je clique sur l'icone qui permet de développer la colonne Table, ca me donne le code :

let
    Source = Xml.Tables(Web.Contents("source du xml")),
    #"Table développé" = Table.ExpandTableColumn(Source, "Table", {"Nom-de-l-039-entreprise", "Pr-nom", "Nom", "Provient-de-la-zone", 
    // etc.... j'ai 40 colonnes donc je ne met pas tout ici pour pas que ca soit imbuvable
in
    #"Table développé"
    

Déjà, première question, y-t-il une ligne de code qui me permettrait de développer toutes les colonnes plutot que de devoir indiquer les noms de chaque colonnes. Je ne voudrais pas avoir de problème si le propriétaire du XML décide d'ajouter une colonne qui n'est pas répertoriée dans mon code.

Lorsque je développe une autre colonne (étape 3), par exemple la colonne "Table.Poste-t-l.-Ent.", qui correspond au numéro de téléphone de l'entreprise, voici le code :

let
    Source = Xml.Tables(Web.Contents("source du xml")),
    #"Table développé" = Table.ExpandTableColumn(Source, "Table", {"Nom-de-l-039-entreprise", "Pr-nom", "Nom", "Provient-de-la-zone", 
    // etc.... j'ai 40 colonnes donc je ne met pas tout ici pour pas que ca soit imbuvable
    #"Table.Poste-t-l.-Ent. développé" = Table.ExpandTableColumn(#"Table développé", "Table.Poste-t-l.-Ent.", {"Element:Text"}, {"Table.Poste-t-l.-Ent..Element:Text"})
in
    #"Table.Poste-t-l.-Ent. développé"
    

Merci,

Julien

Bonjour,

Quelqu'un aurait une idée svp ?

Rechercher des sujets similaires à "power query colonne separer expandall"