Collecte de données non répétitive avec formule

2echantillon.xlsx (10.57 Ko)
screenshot 1

bonjour j'écris avec google translate je ne sais pas le français

Comment puis-je calculer le nombre total non récurrent dans la colonne A1:A14 pour hier?

Bonjour,

Voici un essai avec la formule suivante :

=SOMME(SIERREUR(1/NB.SI.ENS($A$1:$A$14;SI($B$1:$B$14="Hier";$A$1:$A$14;"");$B$1:$B$14;"Hier");""))

Il faut valider cette formule en appuyant en même temps sur les 3 touches CTRL SHIFT ENTER.

4classeur2.xlsx (8.32 Ko)

Cdlt,

Merci @3GB

3classeur2-1.xlsx (11.56 Ko)
screenshot 2

2. Si nous mettons une autre condition, comment faisons-nous?
échantillon
2ème condition = 1

Bonjour,

Je propose 2 solutions, une avec une formule et une autre avec une fonction personnalisée :

Function COUNTIFS_UNIQUE(Plage, ParamArray vargs())
Set dico = CreateObject("scripting.dictionary")
temp = Application.Transpose(Plage.Value)
For i = LBound(temp) To UBound(temp)
    sconc = "": scur = ""
    For j = LBound(vargs) To UBound(vargs)
        If j Mod 2 = 1 Then sconc = sconc & vargs(j) Else scur = scur & vargs(j)(i)
    Next j
    If sconc = scur Then
        If Not dico.exists(temp(i) & scur) Then dico(temp(i) & scur) = ""
    End If
Next i
COUNTIFS_UNIQUE = dico.Count
End Function

La fonction personnalisée est utilisée ainsi :

=COUNTIFS_UNIQUE(A1:A14;B1:B14;B16;C1:C14;B17)

un peu comme le mélange d'un NB.SI.ENS (countifs) et d'un SOMME.SI.ENS (sumifs). Le premier argument est la plage dont on cherche le nombre de valeurs uniques.

Ensuite, il n'y a un nombre indéfini de couples d'arguments (plage avec critère, critère).

6classeur2.xlsm (14.68 Ko)

Cdlt,

Merci beaucoup @3GB

COUNTIFS_UNIQUE fonctionne et donne un résultat correct 4

L'opération avec formule montre la valeur 0 n'affiche pas 4

Je suis désolé c'était de ma faute ça marche

Pas de souci !

Il faudra juste faire attention, la fonction personnalisée COUNTIFS_UNIQUE est prévue pour des plages en colonne. Sinon, je pense qu'elle devrait fonctionner pour le besoin...

Cdlt,

2classeur.xlsm (17.43 Ko)

chère 3GB

Je n'ai pas pu adapter l'exemple de travail à l'œuvre originale

Bonjour Merakli,

C'est aussi pour ça que j'ai proposé la fonction...

La formule était imparfaite (incomplète). Cette fois-ci, je pense qu'elle devrait marcher :

=SOMME(--(LIGNE($A$1:$A$34)=SI($B$1:$B$34&$C$1:$C$34=H1&H2;EQUIV($A$1:$A$34&$B$1:$B$34&$C$1:$C$34;$A$1:$A$34&$B$1:$B$34&$C$1:$C$34;0))  ))

J'ai rajouté la colonne C dans la concaténation...

Mais j'ai l'impression que la fonction est plus simple à l'utilisation, en cas de changement de plages...

6classeur.xlsm (16.67 Ko)

Cdlt,

Merci beaucoup 3GB

Je t'en prie ! Bon week-end !

Rechercher des sujets similaires à "collecte donnees repetitive formule"