Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Compter les valeurs uniques (sans doublon) d'une liste filtrée

1,423 views
Skip to first unread message

Sundow

unread,
Dec 7, 2011, 9:22:52 AM12/7/11
to
Bonjour,

Je cherche à ramener en tête en A1 le nombre de valeurs uniques d'une
liste.

A cet effet j'ai trouvé les formules suivantes qui fonctionnent très
bien :

=SOMME(SI(FREQUENCE(A4:A12,A3:A12)>0,1))

ou

=SOMMEPROD(1/NB.SI(A4:A12;A3:A12))

Malheureusement aucune de ces deux formules ne sont sensibles au fait
que l'on filtre la liste.

Je cherche donc une formule ou fonction VBA qui permettrait de ramener
en A1 le nombre de valeurs uniques après filtrage (flèche de filtre
positionnée en A3).

Si quelqu'un à une idée, je le remercie par avance pour son aide.

S.


isabelle

unread,
Dec 7, 2011, 1:20:18 PM12/7/11
to
bonjour,

la liste est filtrée sur quel colonne et sur quel critère ?

--
isabelle

CFrofro

unread,
Dec 8, 2011, 2:03:45 AM12/8/11
to
La bonne formule est =SOMME(SI(FREQUENCE(A3:A12,A3:A12)>0,1))
On applique la fonction sur toute la zone comparée à elle même (A3
partout et pas a3 et A4).
Mais ça ne règle pas ton problème de filtre.
CFrofro

Jacquouille

unread,
Dec 8, 2011, 7:14:48 AM12/8/11
to
Bonjour Isabelle
As-tu reçu mon courriel en bal perso?
Si c'est non, peux-tu me contacter en perso, svp ?
merci et bonne fin de journée

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"isabelle" a écrit dans le message de groupe de discussion :
jboap2$2ve$1...@speranza.aioe.org...

Sundow

unread,
Dec 9, 2011, 4:23:45 AM12/9/11
to

Bonjour Isabelle,
Merci pour ta réponse.
Je n'étais pas là hier et ne peux te répondre qu'aujourd'hui.
J'essaye de mettre en classeur en cijoint mais le site ne réponds
plus ?? En auriez-vous un autre à me conseiller ?
Voilà donc le problème en détail.
J'ai une table qui enregistre les heures d'arrivée et de départ de
personnes et qui calcule le temps travaillé.
Les étiquettes de la base sont les suivantes :

A : Mois (le mois est ramené depuis la date)
B: No (correspond au numéro de ligne+3 car la base commence en linge
3)
C : Nom Prénom (à saisir)
D : Date (à saisir)
E: Heure de début (à saisir)
F: Heure de fin (à saisir)
G: Total heures (calculé)

Le filtre est fait sur la colonne A (il s'agit d'un outil visant à
établir des salaires mensuels) et le nom de la personne (colonne C).
Je souhaiterais en D1 ramener le nombre de jours travaillés sachant
qu'il peut y avoir jusqu'à 3 enregistrements pour une personne et pour
une date donnée si la personne a travaillé le matin de 9 à 12:00 et
l'après midi de 14:00 à 18:00 et le soir de 21:00 à 0:00.
D'où la nécessité d'avoir une formule qui décompte les valeurs
uniques.
Merci d'avance si tu as une idée sur la chose.
Bien cordialement et bonne journée.
S.

Maude Este

unread,
Dec 9, 2011, 5:00:21 AM12/9/11
to
Bonsour®

"Sundow" a écrit
J'essaye de mettre en classeur en cijoint mais le site ne réponds
plus ?? En auriez-vous un autre à me conseiller ?

http://goo.gl/syyFO

isabelle

unread,
Dec 9, 2011, 8:21:50 AM12/9/11
to
bonjour Sundow,

je pense que la fonction SOMMEPROD est ce qu'il faut.
si tu as mis le critère Date en A1 et le critère Nom en C1

=SOMMEPROD((A3:A5000=A1)*(C3:C5000=C1))


--
isabelle

Sundow

unread,
Dec 9, 2011, 8:22:49 AM12/9/11
to
Bonjour Maude Este,

Merci pour ce site mais ça ne fonctionne pas non plus.

http://goo.gl/syyFO

S.

Maude Este

unread,
Dec 9, 2011, 9:43:13 AM12/9/11
to
Bonsour®

"Sundow" a écrit
> Merci pour ce site mais ça ne fonctionne pas non plus.
> http://goo.gl/syyFO

??????

Sundow

unread,
Dec 9, 2011, 10:18:29 AM12/9/11
to
Bonjoir,


Ben que je suive le lien en cliquant dessus ou en le copiant dans la
barre d'adresse de mon Explorer j'ai une redirection qui se fait sur
la page de log de hotmail.

Pour ci-joint je tombe sur une page blanche.

Voilà voilà - Sundow

isabelle

unread,
Dec 9, 2011, 10:24:27 AM12/9/11
to
bonjour S,

http://www.cjoint.com/

Sundow

unread,
Dec 9, 2011, 10:35:00 AM12/9/11
to
Bonjour Isabelle,

Malheureusement la formule sommeprod ne fonctionne pas. Mais je crois
que mes explications n'étaient pas suffisament claires.

Voici donc un lien qui devrait éclaircir les choses :
http://up-master.com/data/comptageJours_1.jpg

Le but est de dénombrer le nombre de jours travailler pour une
personne (filtrée) et un mois donné (filtré).

En l'occurrance l'individu "A" a travailler 10 jours (la valeur qui
devrait apparaître en D1 est 10). La base a préalablement été filtrée
sur le mois "Novembre" et sur le NomPrénom de l'individu "A".

Si je filtre l'individu B alors la réponse sera le nombre de jours
travaillé par B. D'où ma question : dénombrer les valeurs uniques
( d'une liste filtrée

Voilà. Merci d'avance pour vos suggestions. Sundow.
> > S.- Masquer le texte des messages précédents -
>
> - Afficher le texte des messages précédents -

Sundow

unread,
Dec 9, 2011, 9:59:02 AM12/9/11
to
Bonjour Isabelle,

Merci beaucoup pour la proposition, mais non malheureusement cela ne
fonctionne pas.

Voilà un lien image (c'est tout ce que j'ai trouvé) pour mieux
comprendre : http://up-master.com/data/comptageJours_0.jpg

Le but est de placer en D1 cellule rouge une formule qui dénombre les
valeurs uniques de la colonne/plage D4:D5000 (sachant que la plage en
question a été filtrée et que l'on veut dénombrer les valeur uniques
filtrées)

2 filtres ont été fait sur la base originale, un sur les mois (colonne
A) pour isoler le mois de novembre et l'autre sur le Nom Prénom
(colonne D) pour isoler l'individu A.

Voilà, merci d'avance pour ta/vos suggestion(s).

S.



On 9 déc, 14:21, isabelle <i...@v.org> wrote:

Sundow

unread,
Dec 9, 2011, 10:49:48 AM12/9/11
to
Bonjour Isabelle,

Merci pour le lien et la formule.

Le sommeprod ne fonctionne pas.

Voici le fichier XL http://cjoint.com/?ALjqUhDyvs0

Merci d'avance. - S.

isabelle

unread,
Dec 9, 2011, 11:22:00 AM12/9/11
to
revoilà ton fichier avec les formules,

http://cjoint.com/?ALjruYP6Q0a

--
isabelle

Sundow

unread,
Dec 9, 2011, 12:15:21 PM12/9/11
to

Merci beaucoup Isabelle.

Mais ta formule décompte le nombre de lignes filtrées (13) et non le
nombre de valeurs uniques (10).

Je rentre chez moi et n'aurai pas accès à Internet avant lundi. Donc
ne t'étonne pas si je ne te réponds pas d'ici là.

Merci encore pour ton aide et bon we. - Sundow

isabelle

unread,
Dec 9, 2011, 1:58:01 PM12/9/11
to
ok c'est plus clair,

=SOMMEPROD((A4:A1000=A1)*(C4:C1000=C1)*SI(NB.SI(D4:D1000;D4:D1000)>1;1;0))

matricielle à valider par ctrl+maj+enter

http://cjoint.com/?ALjt37sIG4g

bon we à toi également

--
isabelle

isabelle

unread,
Dec 9, 2011, 5:14:47 PM12/9/11
to
il y avait un erreur dans la formulation,
voici la correction :

=SOMME((FREQUENCE(SI(D4:D1000="";"";SI(SOUS.TOTAL(3;DECALER(D4;LIGNE(D4:D1000)-LIGNE(D4);));EQUIV(D4:D1000;D4:D1000;0)));LIGNE(D1:D1000))>0)*1)

matricielle à valider par ctrl+maj+enter

--
isabelle

Sundow

unread,
Dec 12, 2011, 4:19:06 AM12/12/11
to
Bonjour Isabelle,

Waoh ! Merci infiniment Isabelle.

J'essaye même pas de comprendre la formule, je la regarde comme on
regarde une colombe sortie du chapeau d'une magicienne.

Sundow



On 9 déc, 23:14, isabelle <i...@v.org> wrote:
> il y avait un erreur dans la formulation,
> voici la correction :
>
> =SOMME((FREQUENCE(SI(D4:D1000="";"";SI(SOUS.TOTAL(3;DECALER(D4;LIGNE(D4:D10­00)-LIGNE(D4);));EQUIV(D4:D1000;D4:D1000;0)));LIGNE(D1:D1000))>0)*1)

Jacquouille

unread,
Dec 12, 2011, 5:31:26 AM12/12/11
to
Les anges sont un peu magiciens ......
Que dire des geôlières ?

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"Sundow" a écrit dans le message de groupe de discussion :
7c4c7d5b-05b1-48f9...@l24g2000yqm.googlegroups.com...
0 new messages