Formule nombre de clients

Bonjour

je voudrais calculer le nombre de clients , sans doublon

mon soucis c'est qu'il y'a des codes clients "0", quand je les suppriment le nombre de clients baisse de 2117 à 1919 alors qu'il y'a que 10 cellules dont le code est "0".

merci

44formule.xlsx (65.33 Ko)

bonjour,

voir la p.j.

cdlt.

29formule.xlsm (88.69 Ko)

Bonjour Nismo, bonjour le forum,

Par la macro ci-dessous:

Sub Macro1()
Dim O As Worksheet
Dim TV As Variant
Dim D As Object
Dim I As Integer

Set O = Worksheets("Feuil3")
TV = O.Range("E3:E" & O.Range("E" & Application.Rows.Count).End(xlUp).Row)
Set D = CreateObject("Scripting.Dictionary")
For I = 1 To UBound(TV, 1)
    If TV(I, 1) <> "0" Then D(TV(I, 1)) = ""
Next I
O.Range("D2").Value = D.Count
End Sub

J'obtiens le même résultat que toi : 1919. Cela signifie simplement qu'à part les 10 codes 0 (2119 - 10 = 2109), les autres (2109 - 1919 = 190) sont des doublons...

Merci sackman et ThauThème

On a tous obtenu le meme nombre 1920 mais ça ne répond pas à ma question

quand j'applique la formule j'obtiens 2119 et quand je supprime les codes clients "0" le chiffre chute à 1920 (-190)

alors que j'ai que 10 valeurs 0 .

Bonjour le fil, bonjour le forum,

Ta question était : je voudrais calculer le nombre de clients , sans doublon . Non ?

Le code que je t'ai proposé fait cela sans prendre en compte le code 0. Après, de savoir pourquoi avant et pourquoi après...

hey

je ne me suis pas bien expliqué :

regarde le fichier excel .stp

Merci

16formule.xlsx (66.86 Ko)

bonjour

est tu sur de ton 2119 ? car moi je trouve 1919 en ayant éecaté les 10 zero sinon cela 1920 (un 0 ne comptant qu'une fois

a savoir que j'ai nommé en dynamique la colonne E avec

DECALER(Feuil3!$E$3;;;MAX(EQUIV(9^9;Feuil3!$E:$E;1);EQUIV("z^z";Feuil3!$E:$E;1))-2)

pour ne traiter que l'utile

cordialement

Bonjour à tous,

Ta formule, ainsi rectifiée :

=SOMME(SI(E3:E5902<>0;1/NB.SI(E3:E5902;E3:E5902);0))

donne bien 1919 !

Cordialement.

bonjour " le tropical"

tu me rassures

cordialement

Salut Tulipe, t'avais pas besoin de ça !

Surtout qu'on est passé en hiver ici !

re

bah....... si "le doute m'habite"

si t'as besoin ;j'ai des pneus neige

wait ans see about Nismo

cordialement

La neige c'est pour le mois d'août !! [enfin, pas trop en bord de mer... ]

Je me contente encore de me couvrir le soir !!

Merci les amis

et Bon match


Hey tulipe et Mferrand

Merci pour vos messages

vous avez ouvert mon fichier excel ! y'a bien 2119 dans la cellule "D1" ; comment en écartant les zéros

on obtient 1919 alors qu'il y'a que 10 valeurs représentant "0"

J'espère que vous avez m'avez compris

On résume :

La formule 'classique' pour ce calcul :

=SOMMEPROD(1/NB.SI(E3:E3902;E3:E3902))

donne 1920, elle est cadrée sur la plage, le résultat inclut 0 (qui est une valeur).

Ta formule rectifiée :

=SOMME(SI(E3:E5896<>0;1/NB.SI(E3:E5896;E3:E5896);0))

rectifiée pour éliminer la prise en compte de '0' (car NB.SI(......;0) renvoyait normalement 10 et donc ne l'éliminait pas ; le 0 à la fin est pour ordre car 0 ou "" c'est pareil pour SOMME)

mais laissée avec ta plage élargie par rapport à ta plage utilisée

résultat : 1919, elle élimine effectivement la valeur 0.

Ta formule non rectifiée :

=SOMME(SI(NB.SI(E3:E3902;E3:E3902)<>0;1/NB.SI(E3:E3902;E3:E3902);""))

mais ajustée à la plage de valeurs

elle donne 1920, le '0' n'est en effet pas éliminée.

Voyant ça, j'ai aussi essayé ta formule sur la plage 3903:5896 => résultat : 0

J'ai alors détruit cette portion de plage (et rétabli la formule à 5896, car la destruction l'avait ramenée automatiquement à 3902 (et alors elle donnait 1920). Après rétablissement, elle redonne 2119 !

Pourquoi elle calcule faux ainsi formulée ? Je n'en sais rien, mais elle n'en démort pas !

17nismo-formule.xlsx (65.43 Ko)

Merci MFerrand

Rechercher des sujets similaires à "formule nombre clients"