Power Pivot - comptabilisation ID uniques + contexte

Glaglagla

XLDnaute Nouveau
Bonjour,

Je mets en place un tableau de bord qui consiste à comptabiliser le nombre de programmes diffusés. J'ai donc un ID unique par programme. Un même programme peut-être diffusé sur plusieurs offres, en plusieurs définitions, sur plusieurs plateformes, j'ai ainsi une ligne par occurrence.
Je fais donc un DISTINCTCOUNT pour comptabiliser le nombre de programmes uniques traités. Cela fonctionne si je l'utilise dans un tableau qui ne prends pas en compte le détail des mois, mais si un programme est diffusé en SD en mars et rediffusé en HD en avril, il sera comptabilisé deux fois (même si le Total ne prend en compte qu'une seule occurrence, je ne veux pas que le détail mensuel induise en erreur).

J'aimerais trouver un moyen de "tagger" la toute première date de diffusion et ainsi faire un calculate Distinct count en ne prenant en compte que les programmes taggués.

En gros, j'ai une colonne "ID", une colonne "Start date", une colonne "plateforme", une colonne "offre", une colonne "définition": je veux tagger la ligne avec la première date de diffusion par ID. Il peut y avoir plusieurs lignes à la même date (car le programme est diffusé en même temps sur plusieurs plateforme), mais cela n'es pas grave car le DISTINCT COUNT n'en comptera qu'un seul dans mon tableau de bord mensuel, dans la mesure où ils sont diffusés le même jour.

J'espère avoir été suffisamment claire. je suis persuadée qu'il y a une formule toute bête mais que je ne trouve pas... Les sites de description de formules de Microsoft sont, comment dire...
Il y a aussi sans doute une autre solution que le distinct count pour résoudre mon problème... Je prends toutes les suggestions!

Merci beaucoup d'avance de votre aide,
 

chris

XLDnaute Barbatruc
Re : Power Pivot - comptabilisation ID uniques + contexte

Bonjour

Si tu veux garder ton détail mois et plateforme il faut effectivement passer
  • par une formule DAX si tu as la version pro plus ou 365 pro,
    • soit dans le TCD (plus complexe),
    • soit dans le modèle de données (une colonne supplémentaire),
  • soit plus simple encore si tu découvres Powerpivot ou si tu as une autre version de 2013, en utilisant la méthode sans PowerPivot qui consiste à ajouter une colonne dans le tableau source où une formule retourne 1 si c'est la première diffusion et 0 sinon.
    La somme classique sur cette colonne dans le TCD équivaut au distinctcount.
Si tu as besoin de formule, il serait préférable d'avoir un petit exemple représentatif, de la structure de la source et du TCD. 15 lignes représentatives avec des noms d'émissions bidon suffisent
 

Glaglagla

XLDnaute Nouveau
Re : Power Pivot - comptabilisation ID uniques + contexte

Bonjour,

Merci beaucoup pour ta réponse. Je préfèrerais soit passer par une colonne calculée soit ajouter une colonne dans ma source. Ma source vient de Power Query, donc une formule M conviendrait aussi.
Je débute avec ces deux outils, donc je m'en remets à toi pour me fournir la meilleure solution (ou les deux, ça me servira toujours).

En pièce jointe ma source telle que chargée dans le classeur excel en sortie de Power Query. Comme tu le verras, la colonne Product Code contient des doublons. Je veux donc pouvoir compter la première date de diff pour chaque product code.
Petite reflexion: la première date de diff peut être la même pour plusieurs plateformes/offre/définition, donc je ne peux pas me contenter d'additionner les "1", il faut que je reste sur un DISTINCTCOUNT si nouvelle colonne =1, n'est ce pas? A moins que le 1 ne s'applique qu'à la première occurrence rencontrée (donc première date de diffusion pour cet ID + première ligne, les autres lignes, même si à la même date, auront un 0).
Toutes les solutions me conviennent, tant que j'arrive à sortir le bon chiffre ;)

Merci encore,
 

Pièces jointes

  • Exemple.xlsx
    12.6 KB · Affichages: 44
  • Exemple.xlsx
    12.6 KB · Affichages: 48
  • Exemple.xlsx
    12.6 KB · Affichages: 42

chris

XLDnaute Barbatruc
Re : Power Pivot - comptabilisation ID uniques + contexte

Re

Si on compte une seule fois chaque émission quelle que soit la date, plateforme, channel
Code:
=SI(NB.SI.ENS($A$2:A2;A2)=1;1;0)

sinon ajouter un critère discriminant dans le NB.SI : par exemple si la diffusion de la même émission sur 2 channel différents compte pour 2, ajouter
Code:
$C$2:C2;C2
dans le NB.SI.ENS

Je dois filer donc ne pourrais te répondre, si nécessaire, avant ce soir.
 

Glaglagla

XLDnaute Nouveau
Re : Power Pivot - comptabilisation ID uniques + contexte

Salut salut,

Merci bcp pour ta formule, je l'ai appliquée sur ma source et ça fonctionne impec (enfin, pas vraiment car j'ai appliqué la formule dans ma source .csv, qui après est importées dans query pour y être modifi automatiquement). Donc j'aimerais idéalement pouvoir intégrer cette formule dans Pivot ou Query pour ne pas avoir d'action manuelle à chaque mise à jour. oui je suis fainéante ;)
As-tu une idée?

Je pensais éventuellement à procéder en deux temps: avec une formule d'abord qui trouve la première date de diffusion pour tel ID puis en la comparant à la date de la ligne et si c'est la même 1 sinon 2.
Une autre idée? ;)

Merci encore de prendre de ton temps pour m'aider,

Bonne soirée
 

chris

XLDnaute Barbatruc
Re : Power Pivot - comptabilisation ID uniques + contexte

Bonjour

C'est une question d'organisation : ta requête powerquery pointe sur un csv qui ne doit pas changer de nom.
Les données sont rapatriées sous forme de tableau, au sens 2007-2013.

Toute formule ajoutée au tableau suivra l'évolution du tableau : lignes en plus ou en moins dans sa source...
 

Glaglagla

XLDnaute Nouveau
Re : Power Pivot - comptabilisation ID uniques + contexte

Hello,

En fait mon .csv va être amené à être mis à jour régulièrement, donc cela va m'obliger à aller ajouter la formule manuellement dans le fichier à chaque mise à jour.
Et j'ai pense à autre chose; si je veux ajouter un critère de date dans cette formule. Par exemple si je veux que seuls les nouveaux programmes de 2015 soient taggés "1". c'est à dire que si le programme revient en 2016, je voudrais qu'il soit à nouveau taggué "1". Je suis obligée d'avoir un fichier à part pour chaque année?

Merci, et bonne journée!
 

chris

XLDnaute Barbatruc
Re : Power Pivot - comptabilisation ID uniques + contexte

Bonjour

On a du mal à se comprendre : la formule doit être ajoutée dans le tableau obtenu avec PowerQuery pas dans le CSV.

On peut adapter la formule pour prendre en compte l'année mais dans ce cas sauf à créer une colonne année, il faut passer à SOMMEPOROD pour la formule
Code:
=SI(SOMMEPROD(($A$2:A2=A2)*(ANNEE($B$2:B2)=ANNEE(B2)))=1;1;0)
Tu n'as pas pécisé ta version Excel 2013
 

Glaglagla

XLDnaute Nouveau
Re : Power Pivot - comptabilisation ID uniques + contexte

Aaaaah OK, mais comment je fais alors, parce que Power Query charge directement dans Power Pivot? Il faut que je charge la requête dans la feuille de calcul, dans laquelle la formule sera pré renseignée, et j'importe l'excel dans Pivot par la suite? Est-ce que ça ne va pas alourdir sacrément mon fichier d'avoir toutes ces données?

OK Top pour la formule, je vais l'appliquer déjà en prévision du passage à 2016. Merci mille fois! Et désolée d'être un boulet.

J'avoue que sur excel j'étais déjà pas une flèche, mais alors avec deux nouveaux langages différents en plus, je m'y perds un peu...

Pour ma version d'Excel 2013, je ne sais passss. Ca se trouve où? (re désolée d'être un boulet)

++
 

chris

XLDnaute Barbatruc
Re : Power Pivot - comptabilisation ID uniques + contexte

Re

PowerQuery charge d'abord dans un tableau Excel contrairement à PowerPivot qui charge dans son modèle de données.

Si tu n'utilises pas les possibilité de ce dernier, quel est l'intérêt d'y basculer les données ?

Si tu crée le TCD sur la base du tableau créé par PowerQuery, toutes les colonnes seront utilisées.

Comme je l'indiquais, si tu ne veux par refaire la requête à chaque fois, il faut écraser à chaque fois le même CSV : ainsi il n'y a qu'a actualiser.

Pour la version Fichier, Aide. Cela s'affiche aussi sur l'écran de démarrage d'Excel.
 

Glaglagla

XLDnaute Nouveau
Re : Power Pivot - comptabilisation ID uniques + contexte

Hello,

Désolée pour le délais de réponse.
Alors d'abord la version d'excel; je suppose que c'est cela: Excel 2013 (150.4569.1504)
Sinon, je bascule directement mes données dans Power Pivot, car mes tableaux croisés se basent sur plusieurs sources, donc directement sur mon modèle de données Power Pivot.
En tout cas merci, car j'ai pu rendre mon tableau en temps et en heure grâce à ta formule. Je vais réflechir pour optimiser tout cela.

A+
 

Discussions similaires

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16