Dénombrer les occurences différentes

L

lupo

Guest
Bonjour,

Je cherche une formule excel (ou du VBA si on ne peut pas en formule) permettant de me dénombrer les occurences différentes d'une feuille excel.

dans l'exemple, cellules A1 à C3 :
a b c
a d
b e

je voudrais une formule qui me donne le résultat = 5
j'arrive à compter le nombre total d'occurences (= 7) mais je n'arrive pas à retrancher celle qui y sont plusieurs fois (2x 'a' et 2x 'b')

je fais donc appel à vos connaissances pour résoudre mon problème (je n'ai pas trouvé la réponse sur le forum) !

Merci d'avance.

Cdt,
Lupo
 

Gael

XLDnaute Barbatruc
Bonjour Lupo,

Mais oui, il y a déjà eu ce problème sur le forum.

La formule est la suivante:

=Somme(1/NB.SI(plage;plage) à saisir sous forme matricielle (en faisant Ctrl Maj Entrée au lieu de Entrée).

NB.SI(Plage;plage) va créer une matrice avec pour chaque cellule, le nombre d'occurences soit dans ton exemple:

a d c a d b e donnera 2 2 1 2 2 1 1

Le 1/nb.si va donner 1/2 1/2 1 1/2 1/2 1 1

et la somme de tout ça fera bien 5. En fait on obtient pour chaque valeur N*1/N soit 1.

Tu peux également técharger une macro complémentaire MOREFUN.XLL qui contient une fonction NB.DIFF qui a l'avantage d'être plus simple et plus rapide si tu as des plages importantes.

Adresse du téléchargement : Ce lien n'existe plus
nom de la macro: morefun.xll

@+

Gael

Message édité par: Gael, à: 31/08/2005 12:54
 

Celeda

XLDnaute Barbatruc
Bonjour,


et une autre qui vient de notre Monique (elle n'a pas encore de site surlequel on peut la référencer mais on ne sait jamais.....un jour ....et on la prendra en photo avec les plus grands d'Excel....et ses potes d'XLD, of course!!....... B) et je serai son agent.....et on la fera participer à pleins de démonstrations à travers le monde......et on ira aussi à la Télé faire un jeux sur les formules.....bref Monique accroche toi j'ai un sacré programme pour toi et naturellement vous serez tous invités!!! :) :)

Celeda et le rêve éveillé!!!


bon la formule comme JM mais avec sommeprod :

=SOMMEPROD(SI(A1:A10<>'';1/NB.SI(A1:A10;A1:A10)))

plage de A1 à A10

Celeda
 

Discussions similaires

Statistiques des forums

Discussions
312 330
Messages
2 087 342
Membres
103 524
dernier inscrit
Smile1813