Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

nb valeurs sans doublon selon autre colonne

  • Initiateur de la discussion Initiateur de la discussion wwwhttp
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

wwwhttp

XLDnaute Nouveau
bonjour,
j'ai besoin de compter le nombre de valeurs sans doublon d'une colonne A selon la valeur d'une colonne C, sachant que la 1ere ligne à compter est fixe et que le nombre de lignes est variable.
si la solution passe par une formule, je dois l’intégrer dans une macro.
je joins un ficher pour mieux comprendre, j'espère que cela sera suffisant.
Merci d'avance de votre aide
 

Pièces jointes

Re : nb valeurs sans doublon selon autre colonne

Bonjour wwwhttp,

Fonction VBA dans Module1 :

Code:
Function CompteSansDoublon(tablo, v)
Dim d As Object, i&
tablo = tablo 'matrice, plus rapide
Set d = CreateObject("Scripting.Dictionary")
For i = 1 To UBound(tablo)
  If tablo(i, 3) = v Then d(tablo(i, 1)) = ""
Next
CompteSansDoublon = d.Count
End Function
Formule en A3 :

Code:
=CompteSansDoublon(DECALER(A5;1;;EQUIV("zzz";A:A)-LIGNE(A5);3);"NOK")
Fichier joint.

A+
 

Pièces jointes

Dernière édition:
Re : nb valeurs sans doublon selon autre colonne

Re,

Si maintenant on ne veut pas de formule en A3 on peut exécuter cette macro :

Code:
Sub CompteSansDoublon()
Dim v, tablo, d As Object, i&
v = "NOK" 'à adapter
tablo = Range("A6:C" & Range("a" & Rows.Count).End(xlUp).Row)
Set d = CreateObject("Scripting.Dictionary")
For i = 1 To UBound(tablo)
  If tablo(i, 3) = v Then d(tablo(i, 1)) = ""
Next
[A3] = d.Count
End Sub
Fichier (2).

A+
 

Pièces jointes

Re : nb valeurs sans doublon selon autre colonne

Bonsoir,

Noms de champ
critere =Feuil1!$C$6:$C$12
noms =Feuil1!$A$6:$A$12

=NB(1/FREQUENCE(SI(critere="nok";EQUIV(noms;noms;0));LIGNE(INDIRECT("1:"&LIGNES(noms)))))
valider avec maj+ctrl+entrée

Voir explications: Noms différents avec critère

JB
 

Pièces jointes

Dernière édition:
Re : nb valeurs sans doublon selon autre colonne

bonjour,

job75, j'ai utilisé ta macro sans formule, nickel, et comme j'ai compris comment ça tourne, facile à intégrer et à modifier. J'ai (non, j'avais) 6 calculs de même type à faire sur la même feuille, résolu !

BOISGONTIER, ça fonctionne aussi très bien mais j'aimerai bien la comprendre, t'est-il possible de la décortiquer notamment au niveau ''noms'', j'avoue que j'ai du mal à suivre ? je pense avoir un début d'explication si je me mets en A3, dans la barre de formule j'appelle la fonction sur chacune des parties de la formule, je vois à peu près ce qui se passe, mais c'est le ''à peu près'' qui me gêne.

en tout cas, déjà grand merci à vous !
 
Re : nb valeurs sans doublon selon autre colonne

Bonjour @ tous,
Taper "OK" en A2 et "NOK" en A3
Sélectionner B2:B3
Coller cette formule dans la barre de formule :
Code:
=FREQUENCE(SI(FREQUENCE(EQUIV(A6:A12&C6:C12;A6:A12&C6:C12;0);LIGNE(INDIRECT("1:"&LIGNES(A6:A12))));EQUIV(C6:C12;A2:A3;0));{1;2})
@ valider par Ctrl+Maj+Entree

Voir PJ

@ + +
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
40
Affichages
3 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…