Trouver le nombre de valeurs

Résolu/Fermé
EZV12 Messages postés 22 Date d'inscription lundi 18 juin 2018 Statut Membre Dernière intervention 13 février 2019 - 18 juin 2018 à 14:19
EZV12 Messages postés 22 Date d'inscription lundi 18 juin 2018 Statut Membre Dernière intervention 13 février 2019 - 19 juin 2018 à 09:37
Bonjour,

Je voudrais avoir un formule pour trouver le nombre de valeurs dans la colonne B qui correspond à une valeur dans la colonne A.

Veuillez trouver un exemple ci-dessous: il y a 3 clients qui achètent le produit 1 & 2 clients qui achète produit 2.

colonne A colonne B
ligne 1 produit 1 client x
ligne 2 produit 1 client y
ligne 3 produit 2 cleint z
ligne 4 produit 1 client o
ligne 5 produit 2 client p

Merci de m'aider à trouver le bon ou les bons formules. C'est urgent!!
Bien cordialement

5 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
18 juin 2018 à 14:27
Bonjour

=NB.SI(B:B;"produit1")

si bien sur vous n'avez qu'une fois le nom du client pour chaque produit dans la colonne B

crdlmnt
0
EZV12 Messages postés 22 Date d'inscription lundi 18 juin 2018 Statut Membre Dernière intervention 13 février 2019
18 juin 2018 à 14:37
merci de votre réponse rapide, mais ça ne marche pas. Faut-il un formule matricielle? A la place de "produit 1", je dois mettre A1 par exemple car j'ai une très longue liste de produit, il me faut un formule qui va chercher le nombre de valeurs dans la colonne B qui correspondent à la valeur dans la colonne A.
0
EZV12 Messages postés 22 Date d'inscription lundi 18 juin 2018 Statut Membre Dernière intervention 13 février 2019
18 juin 2018 à 14:39
j'ai une longue liste de produits & clients, j'ai besoin de savoir combien de clients achète chaque produit. merci de m'aider à trouver la solution.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
18 juin 2018 à 14:55
je ne vois pas ce qui ne va pas

pour compter le nombre de produit dont le nom est inscrit par exemple en L1, il suffit de compter combien de fois iapparait dans la colonne A, non?
sauf bien sur comme déjà dit plus haut, vous pouvez avoir plusieurs fois le même client qui achète le même produit.

donc:
NB.SI(A:A;L1)

ou si vous voulez "tirer" en colonne C pour avoir le nombre de produit au total à chaque fois qu'il apparaît en A:
en C1:
=NB.SI(A:A;A1)

et si ça ne va pas, déposez un fichier ici, avec quelques explications:
http://mon-partage.fr
et revenez coller ici le lien créé sur le site

à vous lire

crdlmnt
0
EZV12 Messages postés 22 Date d'inscription lundi 18 juin 2018 Statut Membre Dernière intervention 13 février 2019
18 juin 2018 à 15:04
Merci de votre réponse. ce n'est le nombre de produit que je veux savoir, c'est le nombre de clients qui achète le même produit. il faut un formule qui calcule le nombre de client qui a acheté le produit 1 ou produit 2, par exemple, il y a 3 clients qui ont acheté le produit 1 et 2 clients ont acheté le produit 2.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
Modifié le 18 juin 2018 à 15:29
éh bé, compter le nombre de fois ou le nom du produit est présent en colonne A ne convient pas?
. Peut être alors vous déciderez vous à nous dire si vous avez plusieurs fois le même nom de client pour un produit, puisque ça fait deux fois que je souligne le problème
mais si vous avez un client différent chaque fois que le nom du produit apparaît en A, compter le nombre de fois où le produit est en ligne, c'est bien compter le nombre de client
c'est en tout cas ce qu'il se passe avec votre liste dans votre demande; soit trois fois produit 1 et deux fois produit 2
.....peux pas faire mieux avec ce que vous donnez!
0
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
18 juin 2018 à 16:34
Bonjour,

Exemples pour les deux possibilités évoquées en vain ;-) par Vaucluse que je salue au passage
- formule pour le nombre de clients
- fonction personnalisée (macro) pour le nombre de clients différents

https://www.cjoint.com/c/HFsozO3RMJB

> EZV12 Dans ton dernier post, tu as oublié de donner le résultat attendu : y a beaucoup de doublons pour le même produit et clients., que fait on avec ces doublons ?

Cdlmnt
0
EZV12 Messages postés 22 Date d'inscription lundi 18 juin 2018 Statut Membre Dernière intervention 13 février 2019
18 juin 2018 à 17:36
C'est géniale!! Merci beaucoup de votre aide. Les doublons resteront dans les données, j'ai juste besoin de savoir combien de clients en tout achètent le produit durant 10 ans.
Par contre, dans mon fichier Excel, je ne trouve pas le formule "=kompte", j'ai du copier les données dans votre fichier afin d'appliquer cet formule.
merci de votre explication.
bien cordialement
0
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
Modifié le 18 juin 2018 à 20:19
Pour intégrer la fonction personnalisée Kompte dans ton fichier
1. Alt-F11 pour accéder à l'éditeur vba
2. Insertion/Module pour créer le Module 1
3. Coller tout le code dans ce Module

Option Explicit

Const sep = ";"

Public Function Kompte(plageP As Range, plageC As Range, p As String) As Long
Dim nbc As Long, li As Long, nbli As Long, n As Long
Dim dico As Object, cle As String, valeur As String, cles, valeurs, nbcles As Long
Set dico = CreateObject("scripting.dictionary")
nbli = plageP.Rows.Count
For li = 1 To nbli
  cle = plageP.Cells(li, 1).Value
  valeur = plageC.Cells(li, 1).Value
  If dico.exists(cle) Then
    If InStr(1, dico(cle), valeur) = 0 Then dico(cle) = dico(cle) & sep & valeur
  Else
    dico.Add cle, valeur
  End If
Next li
nbcles = dico.Count
cles = dico.keys
valeurs = dico.items
If dico(p) = "" Then
  Kompte = 0
Else
  Kompte = UBound(Split(dico(p), sep)) + 1
End If
End Function

4. Modifier éventuellement la valeur de la constante lideb = 2 (1° ligne des données)
5. Ne pas oublier de sauvegarder ton fichier avec l'extension .xlsm (fichier prenant en compte les macros)

Si c'est fini, peux tu mettre le sujet à résolu (en haut à droite, la roue dentée)

Bonne soirée
0
Merci beaucoup. VBA est trop compliqué pour moi. Est-ce qu’il y a un formule Excel qui peut remplacer celui de VBA? Désolée de vous déranger, mais je ne sais pas du tout faire le vba.
Bonne soirée à vous également.
0
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
18 juin 2018 à 21:39
Pour vba, pas besoin de connaître, si tu fais ce que j'ai mis plus haut, ça se limite presque à un copier/coller

Sinon, une solution avec formule matricielle pour comptage sans doublon
https://www.cjoint.com/c/HFstMTy5iXB

Cdlmnt
0
EZV12 Messages postés 22 Date d'inscription lundi 18 juin 2018 Statut Membre Dernière intervention 13 février 2019
19 juin 2018 à 09:36
C'est super! Merci beaucoup de votre aide et vos explications très détaillées et précises.
Ce sujet est résolu.
bonne journée.
0

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

Posez votre question
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
19 juin 2018 à 08:49
Bonjour,

On peut peut-^tre essayer un TCD ( tableau Croisé Dynamique).....
0
EZV12 Messages postés 22 Date d'inscription lundi 18 juin 2018 Statut Membre Dernière intervention 13 février 2019
19 juin 2018 à 09:37
merci de votre réponse. J'ai déjà un TCD pour cette BDD, mais, il y a trop de produits et clients, il me faut un formule pour calculer le nombre automatiquement. ccm81 m'a aidé à résoudre ce problème.
bien à vous.
0