OVH Cloud OVH Cloud

Connaître le nombre de doublons

17 réponses
Avatar
Crel
Bonjour à toutes et tous
J'ai un tableau classique avec en E3:E1000 des noms
Je souhaite créer un msgbox qui m'indique le nombre de doublons, car il peut
y avoir des doublons, et je souhaite juste les comptabiliser à la demande
avec un bouton.
Merci beaucoup
Patrick

10 réponses

1 2
Avatar
AV
MsgBox [counta(E3:E1000)-sum(if(E3:E1000<>"",1/countif(E3:E1000,E3:E1000)))]

AV

"Crel" a écrit dans le message news:
#
Bonjour à toutes et tous
J'ai un tableau classique avec en E3:E1000 des noms
Je souhaite créer un msgbox qui m'indique le nombre de doublons, car il peut
y avoir des doublons, et je souhaite juste les comptabiliser à la demande
avec un bouton.
Merci beaucoup
Patrick





Avatar
Crel
Salut Imperator,
en fait, il y a un pb j'ai fais un test en mettant 4 noms identiques, il me
donne 3,
Est-ce compliqué de récupérer les noms dans le msgbox?
Patrick


"AV" a écrit dans le message de news:
eQNNv$
MsgBox
[counta(E3:E1000)-sum(if(E3:E1000<>"",1/countif(E3:E1000,E3:E1000)))]


AV

"Crel" a écrit dans le message news:
#
Bonjour à toutes et tous
J'ai un tableau classique avec en E3:E1000 des noms
Je souhaite créer un msgbox qui m'indique le nombre de doublons, car il
peut


y avoir des doublons, et je souhaite juste les comptabiliser à la
demande


avec un bouton.
Merci beaucoup
Patrick









Avatar
Daniel.M
Salut,

Tu remplaces Plg par la plage de ton choix dans le evaluate suivant:

Sub CompteDoublons()
MsgBox [SUM(IF(Plg<>"",1/COUNTIF(Plg,Plg)))-SUM(0+(COUNTIF(Plg,Plg)=1))]
End Sub

L'équivalent en formule matricielle (française) est:

=SOMME(SI(Plg<>"";1/NB.SI(Plg;Plg)))-SOMME(0+(NB.SI(Plg;Plg)=1))

Salutations,

Daniel M.

"Crel" wrote in message
news:%
Salut Imperator,
en fait, il y a un pb j'ai fais un test en mettant 4 noms identiques, il me
donne 3,
Est-ce compliqué de récupérer les noms dans le msgbox?
Patrick


"AV" a écrit dans le message de news:
eQNNv$
MsgBox
[counta(E3:E1000)-sum(if(E3:E1000<>"",1/countif(E3:E1000,E3:E1000)))]


AV

"Crel" a écrit dans le message news:
#
Bonjour à toutes et tous
J'ai un tableau classique avec en E3:E1000 des noms
Je souhaite créer un msgbox qui m'indique le nombre de doublons, car il
peut


y avoir des doublons, et je souhaite juste les comptabiliser à la
demande


avec un bouton.
Merci beaucoup
Patrick













Avatar
AV
en fait, il y a un pb j'ai fais un test en mettant 4 noms identiques, il me
donne 3,


Ben il n'y a aucun problème par rapport à ta question :
"Connaitre le nbre de doublons"
S'il y a 4 valeurs identiques, il y a bien 3 doublons !

Si, dans ton exemple, tu veux avoir comme réponse, 1, il faut modifier la
question :
"Combien de valeurs uniques dans la plage ?"

Voir réponse de Daniel si telle était ta question

AV

Est-ce compliqué de récupérer les noms dans le msgbox?
Patrick


"AV" a écrit dans le message de news:
eQNNv$
MsgBox
[counta(E3:E1000)-sum(if(E3:E1000<>"",1/countif(E3:E1000,E3:E1000)))]


AV

"Crel" a écrit dans le message news:
#
Bonjour à toutes et tous
J'ai un tableau classique avec en E3:E1000 des noms
Je souhaite créer un msgbox qui m'indique le nombre de doublons, car il
peut


y avoir des doublons, et je souhaite juste les comptabiliser à la
demande


avec un bouton.
Merci beaucoup
Patrick













Avatar
AV
Est-ce compliqué de récupérer les noms dans le msgbox?


Sub val_UniK()
Dim vu As New Collection
On Error Resume Next
For Each C In Selection
vu.Add C.Value, CStr(C.Value)
If Err.Number = 0 Then x = x & Chr(10) & C.Value
Err.Number = 0
Next C
MsgBox x
End Sub

AV

Avatar
Daniel.M
Salut Alain,

C'est en effet une question d'interprétation.

Soit les 7 cellules suivantes: a b c c d a a

1.Nombre de doublons (selon ta formule) : 3 (1 c et les deux derniers a)
2.Nombre de noms uniques (selon la classique) : 4 (a b c d)
3.Nombre de noms différents ayant des doublons: 2 (a et c)

Salutations,

Daniel M.

"AV" wrote in message
news:%
en fait, il y a un pb j'ai fais un test en mettant 4 noms identiques, il me
donne 3,


Ben il n'y a aucun problème par rapport à ta question :
"Connaitre le nbre de doublons"
S'il y a 4 valeurs identiques, il y a bien 3 doublons !

Si, dans ton exemple, tu veux avoir comme réponse, 1, il faut modifier la
question :
"Combien de valeurs uniques dans la plage ?"

Voir réponse de Daniel si telle était ta question

AV

Est-ce compliqué de récupérer les noms dans le msgbox?
Patrick


"AV" a écrit dans le message de news:
eQNNv$
MsgBox
[counta(E3:E1000)-sum(if(E3:E1000<>"",1/countif(E3:E1000,E3:E1000)))]


AV

"Crel" a écrit dans le message news:
#
Bonjour à toutes et tous
J'ai un tableau classique avec en E3:E1000 des noms
Je souhaite créer un msgbox qui m'indique le nombre de doublons, car il
peut


y avoir des doublons, et je souhaite juste les comptabiliser à la
demande


avec un bouton.
Merci beaucoup
Patrick

















Avatar
AV
Salut Daniel,

C'est en effet une question d'interprétation
Ou plutôt de formulation de la question, non ?


Absolument d'accord avec tes 3 formulations ;-)

AV

Avatar
Crel
Merci beaucoup Daniel, c'est très sympa de ta part, ta proc fonctionne très
bien, mais je n'arrive pas à l'intégrer dans un msgbox du style :
A ce jour, il y à & doublons & de noms
Merci beaucoup
Patrick



"Daniel.M" a écrit dans le message de
news:
Salut,

Tu remplaces Plg par la plage de ton choix dans le evaluate suivant:

Sub CompteDoublons()
MsgBox [SUM(IF(Plg<>"",1/COUNTIF(Plg,Plg)))-SUM(0+(COUNTIF(Plg,Plg)=1))]
End Sub

L'équivalent en formule matricielle (française) est:

=SOMME(SI(Plg<>"";1/NB.SI(Plg;Plg)))-SOMME(0+(NB.SI(Plg;Plg)=1))

Salutations,

Daniel M.

"Crel" wrote in message
news:%
Salut Imperator,
en fait, il y a un pb j'ai fais un test en mettant 4 noms identiques, il
me


donne 3,
Est-ce compliqué de récupérer les noms dans le msgbox?
Patrick


"AV" a écrit dans le message de news:
eQNNv$
MsgBox
[counta(E3:E1000)-sum(if(E3:E1000<>"",1/countif(E3:E1000,E3:E1000)))]


AV

"Crel" a écrit dans le message
news:



#
Bonjour à toutes et tous
J'ai un tableau classique avec en E3:E1000 des noms
Je souhaite créer un msgbox qui m'indique le nombre de doublons, car
il




peut
y avoir des doublons, et je souhaite juste les comptabiliser à la
demande


avec un bouton.
Merci beaucoup
Patrick

















Avatar
Crel
Mille merci AV, désolé, en fait, à l'avenir, je ferais un effort de
formulation.
j'essaye de récupérer le nom des doublons dans le msgbox.
Patrick


"AV" a écrit dans le message de news:
#
Est-ce compliqué de récupérer les noms dans le msgbox?


Sub val_UniK()
Dim vu As New Collection
On Error Resume Next
For Each C In Selection
vu.Add C.Value, CStr(C.Value)
If Err.Number = 0 Then x = x & Chr(10) & C.Value
Err.Number = 0
Next C
MsgBox x
End Sub

AV





Avatar
Crel
Désolé, je viens de trouver.
Patrick

"Crel" a écrit dans le message de news:

Merci beaucoup Daniel, c'est très sympa de ta part, ta proc fonctionne
très

bien, mais je n'arrive pas à l'intégrer dans un msgbox du style :
A ce jour, il y à & doublons & de noms
Merci beaucoup
Patrick



"Daniel.M" a écrit dans le message de
news:
Salut,

Tu remplaces Plg par la plage de ton choix dans le evaluate suivant:

Sub CompteDoublons()
MsgBox [SUM(IF(Plg<>"",1/COUNTIF(Plg,Plg)))-SUM(0+(COUNTIF(Plg,Plg)=1))]
End Sub

L'équivalent en formule matricielle (française) est:

=SOMME(SI(Plg<>"";1/NB.SI(Plg;Plg)))-SOMME(0+(NB.SI(Plg;Plg)=1))

Salutations,

Daniel M.

"Crel" wrote in message
news:%
Salut Imperator,
en fait, il y a un pb j'ai fais un test en mettant 4 noms identiques,
il



me
donne 3,
Est-ce compliqué de récupérer les noms dans le msgbox?
Patrick


"AV" a écrit dans le message de news:
eQNNv$
MsgBox
[counta(E3:E1000)-sum(if(E3:E1000<>"",1/countif(E3:E1000,E3:E1000)))]


AV

"Crel" a écrit dans le message
news:



#
Bonjour à toutes et tous
J'ai un tableau classique avec en E3:E1000 des noms
Je souhaite créer un msgbox qui m'indique le nombre de doublons,
car





il
peut
y avoir des doublons, et je souhaite juste les comptabiliser à la
demande


avec un bouton.
Merci beaucoup
Patrick





















1 2