Bonjour,
Je te propose deux solutions:
Avec formules et ajout d’une colonne (qui peut être masquée)
A mettre en E3 et tirer vers le bas - Cela comptabilise le Nb de personnes sans doublons avec critère
=SI(ET(NB.SI(C3;"*Malade*");NB.SI(B$2:B2;B3)=0);MAX(E$2:E2)+1;"")
A mettre en C16 pour le résultat : `
Exemple Malade.xlsx (15,8 Ko)
Avec une fonction personnalisée à mettre dans un Module
Function CompteSansDoublons(champ As Range, champcritere As Range, critere As String)
Dim Mondico, i%
Set Mondico = CreateObject("Scripting.Dictionary") 'Création Dictionnaire
For i = 1 To champ.Count 'Boucle sur la plage CHAMP
If UCase(champcritere(i).Value) Like UCase(critere) Then 'Si le ChampCritère contient le Critère en majuscule
If Not Mondico.Exists(champ(i).Value) Then Mondico.Add champ(i).Value, champ(i).Value 'si le champ n'existe pas
End If 'Alors j'ajoute 1 au dictionnaire
Next i
CompteSansDoublons = Mondico.Count 'Nb de champ ajouté au dictionnaire sans doublons
End Function
Exemple Malade.xlsm (21,7 Ko)
`