Power Query Indexer séquentiellement en fonction des données d'une autre colonne

Nath#8520

XLDnaute Nouveau
Bonjour,

J'ai longuement étudié le thread suivant :

J'ai un souci analogue mais sur un fichier bcp plus simple puisqu'il n'a que 2 colonnes,
Comme pour l'auteur du post, J'ai besoin que soit indexée les données de la première colonne.

J'ai reproduit la première méthode indiquée, mais pour une raison que je ne comprends pas dans la colonne index, il est toujours écrit 1.

Je précise être sous excel 2021.

Ne pouvant envoyer les données sources, j'ai refait un fichier d'exemple simplifié.
Les colonne Données 1 et données 2 représentent la source
* les données 1 sont des mélange de lettre et de chiffres.
* Les données 2 sont que des lettres

Le résultat attendu en l’espèce est :
1
1
1
2
1
1
1

Le fichier en PJ contient donc colonne A et B les données colonne C et D les résultats des requettes, lesquelle requettes sont contenues dans le fichier, via recette et connexion.

Je ne saisi pas mon erreur, et j'ai besoin de votre aide.


Par avance merci.
 

Pièces jointes

  • Classeur3.xlsx
    17.6 KB · Affichages: 4

merinos-BernardEtang

XLDnaute Accro
Salut @Nath#8520 ,

nous ne disposons pas des données.

1666618625623.png


A+

Merinos
 

Nath#8520

XLDnaute Nouveau
Tabernacle, suis je distraite.
Mes excuses,

Dites moi si c'est mieux ainsi.

Les données d'origine sont dans l'onglet "données", et l'un de mes trop nombreux essais avec ses requêtes dans l'onglet "test"
 

Pièces jointes

  • TEST.xlsx
    18.3 KB · Affichages: 4

Hasco

XLDnaute Barbatruc
Repose en paix
Re,

Dans le fichier joint vous verrez deux autres exemples dans la feuille PQ qui prenne comme source les données de la feuille 'Données'.

La requête Indexation_1 peut être faite sans intervention dans la barre de formule de l'éditeur power query
L'étape de regroupement :
= Table.Group(#"Type modifié", {"Donnée 1"}, {{"Datas", each _, type table [Donnée 1=nullable text, Donnée 2=nullable text]}})
L'indexation est faite après regroupement en ajoutant une colonne

La requête Indexation_2 demande une intervention dans cette barre de forumle
(Si cette dernière n'est pas affichée, voyez dans le menu affichage.)

Etape de regroupement de Indexation_2
= Table.Group(#"Type modifié", {"Donnée 1"}, {{"Datas", each Table.AddIndexColumn( _,"Index",1), type table [Donnée 1=nullable text, Donnée 2=nullable text, Index = Int32.Type]}})

L'indexation est ajoutée au moment du regroupement

Cordialement
 

Pièces jointes

  • PQ indexation.xlsx
    30.2 KB · Affichages: 9

Nath#8520

XLDnaute Nouveau
Je vous remercie infiniment d'avoir pris le temps de me répondre.
Je n'ai pas encore tout compris, mais je commence à cerner mon erreur.

Un test en grandeur nature, va me dire si j'ai au moins assimilé la solution 1.

Encore merci à vous 2 pour votre patience.
 

merinos-BernardEtang

XLDnaute Accro
Salut @Hasco,

j'ai lu tes query...

je n'avais pas pensé a ajouter l'index lors du groupage.

VB:
let
    Source = Excel.CurrentWorkbook(){[Name="Tableau2"]}[Content],
    #"Type modifié" = Table.TransformColumnTypes(Source,{{"Donnée 1", type text}, {"Donnée 2", type text}}),
    #"Lignes groupées" = Table.Group(#"Type modifié", {"Donnée 1"}, {{"Datas", each Table.AddIndexColumn( _,"Index",1), type table }}),
    #"Datas développé" = Table.ExpandTableColumn(#"Lignes groupées", "Datas", {"Donnée 2", "Index"}, {"Datas.Donnée 2", "Datas.Index"})
in
    #"Datas développé"

j'ai enlevé les parties qui visiblement ne servent pas. il ne sert a rien de définir le contenu de la table.
Donc je l'ai enlevé.

Ce qui est génial c'est l'utilisation du underscore pour appeler les données alors même qu'elle n'ont pas encore de nom.
bref : "_" c'est le données "table" avant même d'avoir un nom.
 

Hasco

XLDnaute Barbatruc
Repose en paix
j'ai enlevé les parties qui visiblement ne servent pas.
Je les avais laissées car on ne sait rien, ni des données originales ni de ce que veut en faire @Nath#8520
il ne sert a rien de définir le contenu de la table.
Si je suis d'accord dans l'exemple qui nous est donné, je ne le suis plus dans d'autres nombreux cas.
Cela évite une étape ultérieure et éventuelle de re-typage des colonnes. Sachant que les typages sont importants dans de nombreuses situations.

Plus on fait tôt ce genre de choses et plus efficace est la requête (du moins en théorie)
Sur les grandes requêtes, c'est une aide appréciable lorsqu'on recherche l'origine de certaines erreurs.

Cordialement
 
Dernière édition:

Nath#8520

XLDnaute Nouveau
En fait, pour les données, je souhaite au final avoir un fichier qui dirait :
AAA ZZZ
BBB ZZZ
CCC XXX / ZZZ
DDD YYY
EEE WWW
FFF VVV

Et il me semble que je peux y arriver avec un système d'indexage.
Comme vous l'aurez compris je débute sur PQ, et donc je tatonne bcp.

Mais comme pour toutes choses pour lesquels on n'est pas formés, et bien il faut s'acharner et se tourner les méninges.
Je progresse petit à petit :)
J'avoue que si je garde précieusement vos échanges, pour le moment je suis dépassée.
Je peux reproduire, mais je ne comprends pas parfaitement ce que je fais.

(Je ne peux envoyer les données réelle, pour un souci de confidentialité, mais la table finale comportera des requetes de 6 ou 7 sources différentes du logiciel dont je dispose)
 

Hasco

XLDnaute Barbatruc
Repose en paix
Re,

Que ne l'avez-vous dit dès le départ ! Point n'est besoin d'indexer quoique ce soit pour ce résultat.
Voir dans le fichier, les requêtes "Groupement_1" et "Groupement_2"
pour le moment je suis dépassée.
Allez-y pas à pas.
N'hésitez pas à poser des questions sur des points précis des requêtes.
Je ne peux envoyer les données réelle,
Il y a toujours moyen de faires des données anonymisées.

Cordialement
 

Pièces jointes

  • PQ indexation.xlsx
    35 KB · Affichages: 5

merinos-BernardEtang

XLDnaute Accro
Salut @Hasco ,

J'ai essayé: J'ai beau mettre "qui" a la place de donnée 1... ce qui est dans les données est "donnée 1" et "donnée 2". La colonne "qui" reste absente.
1666681601594.png



Mais a l'extraction, on voit bien la colonne "qui" ... mais vide.
Donc je comprends que le Table.Group permet de choisir quelles colonnes seront conservées.

Si je crée une colonne en groupant quoi et couleur,le group me permet de ne pas "voir" les colonnes "quoi" et "couleurs" par la suite:

1666683511740.png
 

Pièces jointes

  • PQ indexation lors du group.xlsx
    20.5 KB · Affichages: 2

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

@merinos, ouvrez votre propre discussion, @Nath#8520 n'a pas encore dit si la solution du #post10 lui convenait ou non et votre question dépasse la demande de celle-ci. De toute façon je vous ai dit une c....rie, le renommage on peut le faire dans l'étape de développement des colonnes, pas dans l'étage de groupement., ce qu'on peut faire dans le regroupement, c'est sélectionner et typer les données retournées.

@Nath#8520 voyez le fichier du post#10
 
Dernière édition:

Nath#8520

XLDnaute Nouveau
Bonjour à vous,

Voici ce que j'aurais du dire dans ma présentation :
Je regarde excel et ces modules comme un jeu de casse tete : souvent je m'y amuse, toujours j'apprends quelque chose et parfois je m'arrache les cheveux :)

En vous disant directement ce que je cherchais à faire, ne me serais je pas privée d'un jeu ? ;)

La solution évoquée dans le post 10 me convient parfaitement, et en plus j'ai tout pigé !!!!
Je vais voir comment elle se comporte en grandeur Nature.

Je prendrais bien sur le temps de lire avec attention La proposition de Merinos.

Encore merci à vous deux.
Je reviens vers vous dés que je le peux.
 

Discussions similaires

Statistiques des forums

Discussions
315 091
Messages
2 116 109
Membres
112 662
dernier inscrit
lou75