Compter des cellules selon deux conditions sur une autre colonne

Résolu/Fermé
GuillaumeCha Messages postés 42 Date d'inscription vendredi 19 août 2016 Statut Membre Dernière intervention 25 mars 2019 - 26 août 2016 à 08:14
GuillaumeCha Messages postés 42 Date d'inscription vendredi 19 août 2016 Statut Membre Dernière intervention 25 mars 2019 - 1 sept. 2016 à 04:07
Bonjour a tous,

Voici mon probleme.
J'ai un fichier avec mes differentes ventes de l'annee. Feuille 1 : 1ere vente de l'annee, feuille 2: seconde vente de l'annee etc.

Chaque feuille se presente comme ceci :
J'ai la liste de mes clients, leurs nationnalites et la valeur de leurs achats.
Buyer Country Purchase
Robert FR 10 000
Robert FR 5 000
Jack US 12 000
Jackson IR 8 000
Ying CN 4 000
etc.

J'ai tout d'abord fait le compte du nombre de client unique que j'ai.
J'ai utilize pour cela cette formule
=SUM(IF(FREQUENCY(IF(LEN(A6:A1000)>0,MATCH(A6:A1000,A5:A1000,0)," "),IF(LEN(A6:A1000)>0,MATCH(A6:A1000,A6:A1000,0)," "))>0,1))
qui marche en matriciel et parfaitement bien. Je trouve en nombre de clients : 4 (si on regarde mon exemple)

Ensuite j'ai voulu savoir combien j'ai de clients par nationalite
J'ai construit un tableau avec la liste de mes nationalites et utilize cette formule
=countif(B:B,D5) avec D5 le code de mon pays.

Malheureusement avec cette formule je trouve :
FR = 2 clients or il y en a qu'un UNIQUE buyer...

Avez vous une solution pour jumeler les 2 fonctions ?
il faudrait qu'excel regarde les uniques valeurs dans A, verifie la nationalite et les comptes...

Dites moi si je suis pas assez claire et je vous remercie d'avance :)

Bonne journee !
A voir également:

10 réponses

Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
Modifié par Mike-31 le 26/08/2016 à 08:44
Bonjour,

toujours en formule matricielle teste cette formule pour compter le nombre de clients
=SOMME(SI(A2:A1000<>"";1/NB.SI(A2:A1000;A2:1000)))
en version Anglaise
=sum(if(A2:A1000<>"";1/COUNTIF(A2:A1000;A2:A1000)))
a mon sens il suffit d'incrémenter la formule d'une cellule vers la droite pour compter les Pays

A+
Mike-31

Pas savoir n'est pas un échec, l'échec est le refus d'apprendre.
0
GuillaumeCha Messages postés 42 Date d'inscription vendredi 19 août 2016 Statut Membre Dernière intervention 25 mars 2019 4
26 août 2016 à 08:55
Bonjour,

Je te remercie pour ta reponse rapide !
Alors je t'avoue avoir deux problemes sur ta reponse...
Tout d'abord je n'arrive pas a la faire tourner... il doit y avoir une erreur et je trouve pas ou parce que je comprend pas cee que signifie ' <>"" '

La seconde chose c'est que javoue ne pas comprendre comment ta formule regarde les nationalites alors qu'elle ne prend pas en compte la colonne B...

Je m'excuse de pas tres bien saisir...

Merci encore,

GuillaumeCha
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
Modifié par Mike-31 le 26/08/2016 à 09:02
Re,

<>"" compte les cellule non vide
ou toujours en matricielle tu as
=SOMME(N(FREQUENCE(EQUIV(A1:A1000;A1:A1000;0);LIGNE(A1:A1000))>0))
ou encore cette formule qui tient compte des cellules vides
=SOMME((FREQUENCE(SI(A1:A1000="";"";EQUIV(A1:A1000;A1:A1000;0));LIGNE(A1:A1000))>1)*1)

A+
Mike-31

Pas savoir n'est pas un échec, l'échec est le refus d'apprendre.
0
GuillaumeCha Messages postés 42 Date d'inscription vendredi 19 août 2016 Statut Membre Dernière intervention 25 mars 2019 4
26 août 2016 à 09:27
Vraiment je m'excuse mais je n'arrive ni a faire tourner vos formules (excel me dit erreur a toute, et je trouve pas le probleme, j'ai bien change en anglais pour que cela marche, changer un petit peut...rien ne marche... vous les avez esseye directement sur excel ?) ni ne comprend comment cela peux grouper mon comptage de buyer par nationalite vu que vos formules ne font pas reference a la colonne B (nationalite)...

Je me suis peut etre mal explique, ou alors je comprend pas je suis confus.
Pour juste explique rapidement se que je souhaite faire c'est avoir une formule qui compte les uniques buyers par nationalite...
il faut donc que la formule fasse reference au nom des buyer pour prendre que les uniques buyers et aussi fasse reference a la nationalites pour grouper le comptage. J'espere etre plus claire ! Et encore desole

merci de ton aide et de ta patience !

GuillaumeCha
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
26 août 2016 à 11:13
Re,
je viens de recontrôler et pas de problème avec cette formule matricielle
=SOMME(SI(A2:A1000<>"";1/NB.SI(A2:A1000;A2:A1000)))
ou encore
=SOMME(SI(ESTVIDE(A2:A1000);"";1/NB.SI(A2:A1000;A2:A1000)))

comment fais tu pour confirmer tes matricielles
0
GuillaumeCha Messages postés 42 Date d'inscription vendredi 19 août 2016 Statut Membre Dernière intervention 25 mars 2019 4
30 août 2016 à 04:54
Bonjour Mike,

Je te remercie pour ton aide. En effet - my bad - vos formules marchent.
(je faisais bien CTRL-MAJ-Enter pour le matricielle mais je sais pas pourquoi ca marchais pas.

Cependant cette formule ne repond pas a ma question...

En effet je recherché a faire un comptage des clients unique PAR pays. D'ou mon problem de la double condition...
Voyez vous une solution ?

Merci d'avance,

G.
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
30 août 2016 à 08:17
Re,

et bien c'est pareil tu remplace A2:A1000 par B2:B1000

et d'après ta demande pour FR tu auras 2
ou ta demande n'est pas complète, crée un exemple de fichier avec une dizaine de noms de clients différents et cinq ou six pays et dans une colonne exemple en F le nombre que tu souhaites obtenir et joint le fichier à la discussion
1) Clic sur ce lien https://www.cjoint.com/
2) Clic sur le bouton Parcourir pour sélectionner ton fichier
3) Clic sur le bouton Créer le lien en bas de la page
4) Au bout de quelques secondes en haut de la page en bleu souligné un lien sera généré, tu le sélectionnes et tu le copies dans une réponse
0
GuillaumeCha Messages postés 42 Date d'inscription vendredi 19 août 2016 Statut Membre Dernière intervention 25 mars 2019 4
31 août 2016 à 09:10
Bonjour Mike !

Je te remercie pour ta patience !

voici le lien Cjoint : https://www.cjoint.com/c/FHFhhCl4XSb
Je t ai mis des explications.
Je pense que tu as raisons j ai du mal a presenter se que je souhaites, un exemple sera plus parlant !

Merci encore

Guillaume
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
31 août 2016 à 09:51
Re,

ta formule fonctionne très bien parce que tu as 3 FR colonne B en ligne 3, 4 et 8

à part que tu souhaites compter combien tu as de Nom par pays soit des Robert et FR et là effectivement tu en as 2
ou encore compter qu'un Robert + Pierre et FR et là aussi tu en as que 2

alors quel est la bonne hypothèse
0
GuillaumeCha Messages postés 42 Date d'inscription vendredi 19 août 2016 Statut Membre Dernière intervention 25 mars 2019 4
31 août 2016 à 10:10
je souhaite avoir comme resultat pour france : 2.

En effet Robert est ecrit 2 fois car il m'a achete 2 produits. Cependant c'est le meme client. Or ce que je souhaite avoir c'est le nombre de client francais UNIQUE que j'ai.

Du coup j'aimerai avoir une formule qui me dise en France j'ai deux clients uniques.
Actuellement ma formule me dit j'ai eu 3 achats par des francais, mais c'est pas se que je veux car il me compte le nombre d'achat et non le nombre de client unique.

C'est plus clair ? As tu une idee de la formule ?
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
31 août 2016 à 13:03
Re,

Essaye comme cela toujours en formule matricielle voir

=NB(1/FREQUENCE(SI((B3:B12=N4);EQUIV(A3:A12;A3:A12;0));LIGNE(INDIRECT("1:"&LIGNES(A3:A12)))))
0
GuillaumeCha Messages postés 42 Date d'inscription vendredi 19 août 2016 Statut Membre Dernière intervention 25 mars 2019 4
1 sept. 2016 à 04:07
Merci beaucoup c'est ca !!!
Je te souhaite une tres bonne journee !
0