Comptage valeurs uniques en fonction d'un critère VBA

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Répondre
S
Spark39
Jeune membre
Jeune membre
Messages : 20
Inscrit le : 25 janvier 2020
Version d'Excel : 365

Message par Spark39 » 25 janvier 2020, 21:28

Bonsoir à tous,

Dans le cadre de mon travail, pour expliquer simplement, je dois compter le nombre de références uniques que commercialisent nos clients. Je dispose donc d'une colonne D avec l'Id client et d'une colonne E avec la ref du produit.
Je souhaite donc que ma macro me renvoie dans la colonne I où sont référencés les id clients (sans doublons donc) le nombre de ref différentes qu'ils commercialisent. Je vous joins une image de problème (mon fichier de base fait environ 600k lignes).
Capture d’écran 2020-01-25 à 21.23.01.png
Je sais faire cela avec les formules excel mais je voudrais le faire sur VBA et je n'ai pas trouvé de solution à mon problème.
Je sais créer des boucles avec comptage de lignes/lecture, recherche de valeurs mais compter des valeurs uniques en fonction d'un critère est en dehors de mes capacités.

Je vous remercie par avance pour votre aide, par ailleurs serait-il possible de créer une mesure de cela sur powerpivot ?

Bonne soirée.

Spark39
Avatar du membre
78chris
Passionné d'Excel
Passionné d'Excel
Messages : 5'555
Appréciations reçues : 416
Inscrit le : 9 juillet 2017
Version d'Excel : 2010 à 2019 + 365

Message par 78chris » 25 janvier 2020, 22:15

Bonjour

Faisable en quelques clics
  • soit par TCD
  • soit avec PowerQuery intégré à ta version Excel
pourquoi VBA ?
Chris
Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
Confucius
S
Spark39
Jeune membre
Jeune membre
Messages : 20
Inscrit le : 25 janvier 2020
Version d'Excel : 365

Message par Spark39 » 25 janvier 2020, 22:43

Bonjour,

merci pour votre retour, en effet c'est tout à fait faisable avec les valeurs distinctes sur tcd mais ce n'est pas ce que je recherche.

Je dois aussi faire des analyses sur ces valeurs par périodes et si une même valeur est répétée sur plusieurs périodes alors elle sera comptée plusieurs fois dans le tcd (à part dans le total général).

Je suis donc assez curieux, même naturellement, de savoir comment je pourrais faire sur VBA pour compter cela en fonction uniquement du critère Id client, quitte à rajouter des critères par la suite.

Merci.
Avatar du membre
78chris
Passionné d'Excel
Passionné d'Excel
Messages : 5'555
Appréciations reçues : 416
Inscrit le : 9 juillet 2017
Version d'Excel : 2010 à 2019 + 365

Message par 78chris » 25 janvier 2020, 23:39

RE

Que ce soit par TCD, par PowerQuery ou par VBA la grille d'analyse induiras forcement un comptage par maille de de la grille.

PowerQuery est plus souple que VBA.

Si tu tiens à VBA, la réponse à une demande très, très similaire (je me suis demandé si ce n'était pas la même...) ici https://www.developpez.net/forums/d2041 ... e-colonne/
Chris
Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
Confucius
Avatar du membre
bigdaddy154
Membre impliqué
Membre impliqué
Messages : 1'204
Appréciations reçues : 47
Inscrit le : 5 mars 2014
Version d'Excel : 2010

Message par bigdaddy154 » 26 janvier 2020, 00:02

Bonsoir,

un essai en vba.

Cordialement.

Ps: coucou 78chris
Classeur1.xlsm
(23.96 Kio) Téléchargé 7 fois
S
Spark39
Jeune membre
Jeune membre
Messages : 20
Inscrit le : 25 janvier 2020
Version d'Excel : 365

Message par Spark39 » 26 janvier 2020, 10:01

Merci beaucoup Biddaddy,

Exactement la réponse que je cherchais. Je vais aussi regarder cela sur powerquery.

Bon dimanche à vous,
Répondre
  • Sujets similaires
    Réponses
    Vues
    Dernier message