XL 2016 Power Query Compter les lignes en double

danielco

XLDnaute Accro
Bonjour,

Comment mettre en regard de chaque ligne le nombre de lignes analogues ?

Capture d’écran 2020-12-21 154903.png

Pour obtenir le résultat de la colonne "résultat souhaité". Il y a deux lignes "juin" et "A", 3 lignes "juil" et A etc.

Merci d'avance.

Daniel
 

chris

XLDnaute Barbatruc
Bonjour à tous

De façon générale pour compter, sommer... un peu comme NB.SI, SOMME.SI, MIN.SI, MAX.SI, MOYENNE.SI...
il faut regrouper

Ensuite pour retrouver le détail on a 2 alternatives
  • fusionner le résultat avec l'étape précédent le regroupement
  • intégrer toutes les lignes dans le regroupement afin d'y récupérer le détail
C'est cette 2ème alternative qu'à utilisée Amilo
 

chris

XLDnaute Barbatruc
RE

Le site est en cours d'évolution donc certaines fonctionnalités peuvent ne pas fonctionner à 100%

Si juste après l'étape de regroupement tu cliques sur une des lignes table, en bas tu vois ce que contient cette table imbriquée et donc ce qu'on peut y récupérer

Pour ma part je ne la nomme jamais Nombre : c'est peut-être ce qui te gêne
 

Amilo

XLDnaute Accro
Bonjour à tous,


Pour ma part je ne la nomme jamais Nombre : c'est peut-être ce qui te gêne
@chris , pour les solutions que je poste sur le forum je laisse toujours les noms que Power query génère automatiquement par défaut.
Ceci afin qu'un débutant qui essaye de refaire les étapes s'y retrouve lorsqu'il rencontre les mêmes noms.
En réalité, je renomme bien sûr mes étapes ainsi que les noms de mes colonnes par un nom parlant.

@danielco , les tables imbriquées servent à décomposer la table principale en sous-tables en fonction d'une ou plusieurs colonnes. (dans cet exemple, les sous-tables sont liées au nom de mois de la colonne "Mois')
Il est alors plus facile d'appliquer une ou plusieurs colonnes intermédiaires avec des formules s'appliquant à chacune des sous-tables

La même solution pouvait aussi s'écrire en une seule étape comme suite sans passer par des regroupements (ou tables imbriquées) mais c'est un peu plus compliqué :

VB:
=List.Count(Table.SelectRows(Source,
(test)=> test[Mois]=[Mois]
)[Mois])

Cordialement
 
Dernière édition:

chris

XLDnaute Barbatruc
RE

J'avais de mon côté fait un PowerQuery et pas vraiment détaillé la proposition d'Amilo mais je me rends compte, avec sa dernière formule, que sa solution n'applique que le critère Mois et pas le critère Code Prod

Il faut inclure Code Prod dans le regroupement
 

Amilo

XLDnaute Accro
RE

J'avais de mon côté fait un PowerQuery et pas vraiment détaillé la proposition d'Amilo mais je me rends

Il faut inclure Code Prod dans le regroupement

RE

J'avais de mon côté fait un PowerQuery et pas vraiment détaillé la proposition d'Amilo mais je me rends compte, avec sa dernière formule, que sa solution n'applique que le critère Mois et pas le critère Code Prod

Il faut inclure Code Prod dans le regroupement
Oui il faudrait l'inclure probablement, car je présume aussi que le fichier réel est différent de celui présenté par danielco
Cordialement
 

Amilo

XLDnaute Accro
Re,
Pour info, voici un nouveau fichier pour illustrer la remarque à @chris,

- un 1er tableau Power query avec comme critère une seule colonne "Mois" (le résultat serait donc erroné)
- et un 2ème tableau Power query avec 2 critères "Mois" et "Code prod"

En fait, nous ne connaissons pas le fichier réel à danielco mais effectivement je pense qu'il y aurait 2 critères à prendre en compte (les données de son image au 1er message ne doivent pas être exhaustives)

Le code Power query du 2ème tableau s'écrirait donc :
VB:
=List.Count(Table.SelectRows(Source,
(test)=> test[Mois]=[Mois] and test[Code prod]=[Code prod]
)[Mois])

Je quitte pour ce soir

Bonne nuit à tous
 

Pièces jointes

  • Nombre_Power query.xlsx
    20.2 KB · Affichages: 9
Dernière édition:

Discussions similaires

Réponses
13
Affichages
574
Réponses
10
Affichages
268

Statistiques des forums

Discussions
312 497
Messages
2 088 992
Membres
104 000
dernier inscrit
dinelcia