Comptage d'occurence

Danix

XLDnaute Nouveau
Bonjour,

J'ai besoin d'un peu d'aide pour dénombrer le nombre d'occurences, nombre de sites uniques pour un client. ai réussi à faire la somme pour un client à base de la fonction Sommeprod, mais pas à compter le nombre d'occurence unique. Je joins un petit fichier excel avec un exemple de ce que je souhgaite obtenir.

Ai fait des recherches infructueuses sur le forum (occrences, sommeprod,...), ai trouvé des informations interessantes mais ne répondant pas à mon problème. J'aimerai éviter si possible une macro.

Merci d'avance pour votre aide.

Slts
 

Pièces jointes

  • Comptage.xls
    18 KB · Affichages: 124
  • Comptage.xls
    18 KB · Affichages: 123
  • Comptage.xls
    18 KB · Affichages: 125

Danix

XLDnaute Nouveau
Re : Comptage d'occurence

Bonjour,

Merci pour la réponse Mutzik.

Ce que je cherche à compter, c'est le nombre de sites uniques pour un client donné, sachant que dans la base excel, j'ai d'autres colonnes qui différencient l'enregistrement. exemple : si le client A a plusieurs sites avec d'autres critères qui les différencient, je souhaite avoir le nombre de sites dont le nom est identique compter une seule fois

A Site 1 Produit A
A Site 1 Produit B
A Site 2 Produit A

doit me donner comme résultat : client A deux sites

J'espère être suffisament clair dans mon explication. Je vous remercie pour votre aide et espère pouvoir solutionner ce probleme de comptage.
 

Dugenou

XLDnaute Barbatruc
Re : Comptage d'occurence

Salut,

Une méthode pas très élégante car deux colonnes supplémentaires, mais ça donne le résultat attendu.

je pense que Monique fera mieux !

Cordialement
 

Pièces jointes

  • comptage-doccurence-comptage.xls
    19 KB · Affichages: 91
  • comptage-doccurence-comptage.xls
    19 KB · Affichages: 87
  • comptage-doccurence-comptage.xls
    19 KB · Affichages: 97

Homepyrof

XLDnaute Nouveau
Re : Comptage d'occurence

Bonjour

Voici une approche
Il faudrait pouvoir passer en argument la zone de donnée.
Cest possible mais je n'ai pas le temps ce soir
 

Pièces jointes

  • comptage-doccurence-comptage.xls
    32.5 KB · Affichages: 93
  • comptage-doccurence-comptage.xls
    32.5 KB · Affichages: 95
  • comptage-doccurence-comptage.xls
    32.5 KB · Affichages: 89

Danix

XLDnaute Nouveau
Re : Comptage d'occurence

Bonjour,

Merci à tous et particulièrement à Monique, Homepyrof, Dugenou, Mutzik pour vos réponses et solution à mon problème.

Monique, ta fonction correspond à mon besoin, mais j'ai un peu de mal à la comprendre surtout la fin (Lignes(B1:B13) ), je ne connaissais pas la fonction Frequence. Si tu pouvais prendre le temps de me la documenter, afin que je comprenne et puisses l'appliquer à d'autres besoins, ce serait très sympathique.

Merci encore à tous
 

Monique

Nous a quitté
Repose en paix
Re : Comptage d'occurence

Bonjour,

Ouh là, je vais avoir du mal

Frequence() "Calcule la fréquence d'apparition des valeurs dans une plage de valeurs, puis renvoie des nombres sous forme de matrice"
Mais avec des nombres et tu as du texte

Lignes(B1:B13) est traduit par Excel par le n° des lignes {1;2;3;4;5;6;7;8;9;10;11;12;13}
Comme le tableau ne fait que 10 lignes :
=SOMME((FREQUENCE(SI(SF_NAME=H4;EQUIV(PLANT;PLANT;0));{1;2;3;4;5;6;7;8;9;10})>0)*1)

Dans la barre de formule, on sélectionne EQUIV(PLANT;PLANT;0) et on appuie sur F9
on obtient {1;2;3;1;3;1;2;8;1;3} (ou autres nombres), c'est la première position (equiv()) de chaque valeur dans la plage C4:C13
Si on a X Y Z Y Z Y Z Y Z Y on obtient {1;2;3;2;3;2;3;2;3;2}
=SOMME((FREQUENCE(SI(SF_NAME=$H$4;{1;2;3;1;3;1;2;8;1;3});{1;2;3;4;5;6;7;8;9;10})>0)*1)

Idem en sélectionnant SF_NAME=$H$4 et on obtient une série de VRAI et de FAUX {VRAI;FAUX;FAUX;FAUX;etc}
=SOMME((FREQUENCE(SI({VRAI;FAUX;FAUX;FAUX;VRAI;VRAI;VRAI;FAUX;FAUX;FAUX};{1;2;3;1;3;1;2;8;1;3});{1;2;3;4;5;6;7;8;9;10})>0)*1)

Idem pour les deux premiers arguments
=SOMME((FREQUENCE({1;FAUX;FAUX;FAUX;3;1;2;FAUX;FAUX;FAUX};{1;2;3;4;5;6;7;8;9;10})>0)*1)

Idem pour toute la formule sauf "Somme(()*1)", ça donne
=SOMME(({VRAI;VRAI;VRAI;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX})*1)
où Vrai équivaut à 1 et Faux à 0, donc résultat 3

La formule matricielle se fabrique un tableau de matrices, ce qui est entre {}, fait ses comptes ligne par ligne et fait le total, tout ça dans la même formule
 

Danix

XLDnaute Nouveau
Re : Comptage d'occurence

Bonjour Monique, le forum

Merci pour tes explications qui sont très claires, et cela me permet de mieux comprendre la formule que tu as batie afin de pouvoir la transposer pour d'autres besoins.

Encore un grand merci à tous

Slts
 

Archibald

XLDnaute Nouveau
Re : Comptage d'occurence

Bonjour Monique,
Je débute complètement avec les matrices. J'ai un peu de mal. Je voudrais commencer par un exemple plus simple, et qui correspond précisément à un besoin réel pour mon boulot. Dans ton fichier FrequenceDanix.xls, je voudrais mettre en colonne E la valeur VRAI en face de toutes les valeurs de la colonne B pour lesquelles il existe au moins une occurence où la valeur de la colonne C vaut y.
Autrement dit je voudrais dans la colonne E la valeur VRAI en face de a et de b (car y est présent en C5 et en C10) et faux en face des autres.
Merci de ton aide.
Archibald
 

Archibald

XLDnaute Nouveau
Re : Comptage d'occurence

Merci Monique.
Malheureusement, ce n'est pas cela.
Je vais m'exprimer autrement. Voici un tableau :

Objet Couleur ce_que_je_veux
boule blanc VRAI
cube rouge VRAI
pion vert FAUX
crayon jaune FAUX
boule rouge VRAI
pion jaune FAUX
cube rouge VRAI
boule marron VRAI
cube blanc VRAI
crayon vert FAUX
boule orange VRAI
crayon blanc FAUX

Je voudrais VRAI en face des objets dont il existe au moins un exemplaire rouge, et FAUX sinon.
Je suis sûr que pour toi, c'est simplissime...
Merci
Archibald
 

Archibald

XLDnaute Nouveau
Re : Comptage d'occurence

Monique, tu es géniale. C'est parfait. Je te remercie infiniement, je gagne beaucoup de temps.

Pour moi, sommeprod s'utilise habituellement avec en arguments deux colonnes, séparées par un point-virgule. J'ai du mal à comprendre le concept du multiplié associé à la fonction sommeprod.
Si je comprends bien, en mettant * on multiplie les éléments des deux matrices monocolonnes deux à deux, et on obtient une nouvelle matrice monocolonne. Est-ce bien cela ?
Si oui, pourquoi utiliser sommeprod et non pas somme, tout simplement ?
J'ai remplacé sommeprod par somme, ca ne marche pas.
Je suis perdu.
Archibald
 

Discussions similaires

Statistiques des forums

Discussions
312 609
Messages
2 090 191
Membres
104 447
dernier inscrit
Baldur