Countifs distinct

Bonjour le forum,

J'aimerai optimiser la formule ci dessous afin de ne sélectionner uniquement des valeurs distinctes :

=COUNTIFS(A:A;"critère 1";C:C;"critère 2")

en gros dans mon tableau, j'ai 3 colonnes :

  • colonne A : PROJETS (nom du projet : REPO / DEV / COMPTA) --> ce qui m'intéresse c'est uniquement les projets REPO dans ma formule
  • colonne B : NAME (nom du projet)
  • ETAT : l'état du projet (en cours / en attente / fermé)

c'est sur la colonne NAME que je peux avoir des doublons (par contre je ne peux pas les supprimer car j'en ai besoin pour les étapes suivante de mon reporting)

Je vous joins un fichier exemple avec un exemple de données.

Si quelqu'un peut m'aide ou m'orienter car j'ai déjà regarder sur le forum et j'ai rien trouvé qui puisse m'aider (où alors je suis passée à côté)

merci d'avance

Mélanie

5test.xlsx (9.13 Ko)

Bonjour

Un essai à tester avec une fonction personnalisée. Te convient-il ?

Bye !

11test-v1.xlsm (21.33 Ko)

Bonjour gmb,

Merci de ta réponse et ton premier test qui marche tr!s bien dans l'exemple.

J'ai changé ta fonction car ma colonne status est dans la colonne N:N en réalité

Function CountSiREPO(plage As Range, etat As Range)
    Set dico = CreateObject("Scripting.Dictionary")
    For i = 1 To plage.Rows.Count
        v = plage(i, 1) & plage(i, 2) & plage(i, 14)

        If dico.exists(v) Then
            dico(v) = dico(v) + 1
        Else
            dico(v) = 1
        End If
    Next i
    clé = dico.keys
    it = dico.items
    n = 0
    For i = 0 To dico.Count - 1
        If clé(i) Like "REPO : Reporting" & etat Then
            n = n + 1
        End If
    Next i
    CountSiREPO = n
End Function

Le problème c'est quil me retourne 0 à chaque fois

de plus comme j'ai un jeu de données assez volumineux, je me demandais si c'était pas possible de procéder à une formule plutot qu'à une fonction vba ?

Mélanie57


Je veux dire une formule avec des expressions déjà intégré dans Excel

FREQUENCY

SUMPRODUCT

Autres

Bonjour,

En I2:

=NB(1/FREQUENCE(SI((Critère1=$I$1)*(critère2=H2);EQUIV(valeurs;valeurs;0));LIGNE(INDIRECT("1:"&LIGNES(valeurs)))))

Valider avec maj+ctrl+entrée

Critère1 =DATA!$A$2:$A$12

critère2 =DATA!$C$2:$C$12

valeurs =DATA!$B$2:$B$12

Ceuzin

Merci Ceuzin,

Cette formule fonctionne, seulement un critère a été oublié.

Je souhaite compter uniquement les projets REPO

Cf PJ

=NB(1/FREQUENCE(SI((Critère1="REPO")*(critère2=H2);EQUIV(valeurs;valeurs;0));LIGNE(INDIRECT("1:"&LIGNES(valeurs)))))

Valider avec maj+ctrl+entrée

Ceuzin

Merci Ceuzin,

Cela fonctionne.

Par contre ça prend un temps énorme à charger quand on a un jeu de données volumineux

Il faut utiliser la fonction personnalisée.

Ceuzin

Rechercher des sujets similaires à "countifs distinct"