9 cas qui expliquent comment utiliser la fonction NB.SI.ENS

L’article présent de la formation Excel vous fait découvrir comment utiliser la fonction NB.SI.ENS pour appliquer plusieurs critères aux plages de cellules. Les critères qui seront traités dans les 9 exemples d’utilisation de NB.SI.ENS qui suivent, sont de types texte, numérique, date … Cet article va vous montrer aussi comment compter le nombre de cellules non vides correctement, et comment utiliser NB.SI.ENS avec OU logique.

9 cas qui expliquent comment utiliser  la fonction NB.SI.ENS


La fonction NB.SI.ENS vous permet de compter le nombre de cellules répondant à plusieurs critères de types différents : Nombre, Texte, Date, valeur logique….
La syntaxe de la fonction NB.SI.ENS est :
NB.SI.ENS(plage_critères1; critères1; [plage_critères2; critères2]…)

Les deux arguments plage_critères1 et critères1 sont obligatoires au fonctionnement de la fonction NB.SI.ENS, quant aux autres paires plages_critères/critères, elles sont facultatives.

Combien de paires plages-critères/critères pouvez-vous introduire dans la fonction NB.SI.ENS ?
  • La fonction NB.SI.ENS peut contenir jusqu’à 127 paires plages-critères/critères.

Note : la plage critères doit être insérée toujours avant le critère associé.

Pour découvrir rapidement comment utiliser la fonction NB.SI.ENS, regardez cette vidéo :


Pour bien comprendre comment utiliser la fonction NB.SI.ENS, veuillez suivre ces 9 exemples :
  • Partons de ce petit tableau et entamons le premier exemple :


Liste des ventes


Exemple 1 : Combien de vendeurs ont réalisé un montant de vente plus que 3000 Euros à Paris ?

  • Sélectionnez une cellule pour y insérer la formule suivante :

=NB.SI.ENS(C2:C14;"Paris";D2:D14;">3000")
Cette formule permet de sélectionner en premier les cellules contenant « Paris » dans la plage de cellules C2:C14, puis de trouver les montants supérieurs à 3000 Euros dans la plage de cellules D2:D14 et qui correspondent à ces cellules.

Fonction NB.SI.ENS


Note : pour le premier critère "Paris", il est écrit entre guillemets puisque c’est un texte. Et pour le deuxième critère ">3000", il est écrit aussi entre guillemets parce que le nombre 3000 est précédé d’un opérateur de comparaison ">".
Normalement lorsqu’un critère est de type numérique, on l’écrit sans guillemets, mais si vous lui faites accompagner <,>, = ou <> vous devez le mettre entre guillemets.

Exemple 2 : Utilisation des références de cellules dans les arguments de la fonction NB.SI.ENS

Dans cet exemple, nous avons écrit les critères Nom de ville dans la cellule F4, et le montant de vente dans F6.
Au lieu de modifier à chaque fois notre formule exemple de NB.SI.ENS, nous allons tout simplement changer les données dans ces deux cellules F4 et F6 :

  • Voici donc notre formule dynamique que nous allons utiliser :

=NB.SI.ENS(C2:C14;F4;D2:D14;">"&F6)

Utilisation de références de cellules dans NB.SI.ENS

  • Remarque n°1 : le critère nom de la ville est remplacé par la référence de cellule F4 sans guillemets.
  • Remarque n°2 : pour le critère >3000, nous avons laissé l’opérateur > entre guillemets et avons ajouté une esperluette suivie de la référence F6 sans guillemets.

Essayons maintenant de remplacer Paris par Lisbonne et remarquez que le résultat est mis à jour automatiquement :

fonction NB.SI.ENS dynamique


Note : ne mettez pas une référence de cellules entre guillemets lorsque vous l’utilisez comme critère de la fonction NB.SI.ENS.

Exemple 3 : Combiner des astérisques avec des références de cellules

Par exemple, si vous voulez compter le nombre de cellules contenant le nom Antoine qui travaille à Lisbonne, tapez la formule suivante :
=NB.SI.ENS(B2:B14;"*"&F6&"*";C2:C14;F4)

NB.SI.ENS avec critère astérisques


Vous voyez les deux esperluettes qui se sont placées avant et après la référence de cellule F6.

Exemple 4 : Compter le nombre de cellules contenant des montants entre 2000 et 4000 Euros


Dans cet exemple, vous allez traiter deux critères de type numériques et qui se trouvent dans la même colonne ou plage de cellules.
  • Commencez d’abord par donner à chaque colonne de votre tableau un nom significatif que vous allez utiliser comme référence dans les arguments de votre fonction NB.SI.ENS. ça va vous faciliter le travail !

Par exemple renommer la plage :
  • A2:A14 par Date_Vente
  • B2:B14 par Vendeurs
  • C2:C14 par Villes
  • D2:D14 par Montants.


Renomer une plage de cellules


  • Sélectionnez une cellule vide et tapez =NB.SI.ENS( puis tapez  mon  pour faire apparaître le nom de la colonne Montants.
  • Sélectionnez-le donc et continuez la saisie de votre formule pour obtenir la formule suivante :

=NB.SI.ENS(Montants;">2000";Montants;"<4000")

NB.SI.ENS avec critères numériques


Attention !
Il faut que les plages de critères utilisées dans la fonction NB.SI.ENS aient le même nombre de lignes, si non Excel retournera une erreur de type #VALEUR !.

Utilisation des critères de type date dans la fonction NB.SI.ENS

Exemple 5 : Compter le nombre de ventes réalisées entre le 05/04/2017 et le 08/04/2017

  • Sélectionnez une cellule vide et entrez la formule suivante :
=NB.SI.ENS(A2:A14;">=05/04/2017";A2:A14;"<=08/04/2017")
  • Faites attention aux guillemets !


NB.SI.ENS avec critères dates


Exemple 6: Compter le nombre de ventes réalisées à Londres depuis le 05/04/2017 jusqu’aujourd’hui et ayant un montant supérieur à 2000 Euros

Notre formule va contenir donc trois plages de critères : Date de vente, Ville et Montant de vente et la fonction AUJOURDHUI() :
  • Sélectionnez une cellule vide et entrez la formule suivante :

=NB.SI.ENS(Date_Vente;">=05/04/2017";Date_Vente;"<="&AUJOURDHUI();Ville;C14;Montants;">2000")

NB.SI.ENS avec 4 critères


  • L’objectif de cet exemple est de vous présenter une fonction NB.SI.ENS contenant quatre critères de 3 types de données différents.

NB.SI.ENS différent de

Exemple 7 : Compter le nombre de cellules contenant toutes les noms de villes sauf  "Paris" et dont la date de vente est postérieure ou égale à 05/04/2017

  • Entrez la formule suivante en introduisant l’opérateur <> :

=NB.SI.ENS(Ville;"<>paris";Date_Vente;">=05/04/2017")

NB.SI.ENS différent de texte


Exemple 8 : Compter le nombre des cellules non vides

Vous avez vu dans l’article: "NB, NBVAL et NBVIDE comptent le nombre de cellules différemment" comment compter le nombre de cellules non vides en utilisant la fonction NBVAL. Et pour le faire avec la fonction NB.SI.ENS, tapez la formule suivante qui va vous permettre de compter le nombre de montants de ventes réalisées à Londres en ignorant les montants non encore enregistrés :
  • Par exemple la cellule D14 est vide.

=NB.SI.ENS(Ville;"Londres";Montants;"<>"&"")

NB.SI.ENS différent de vide


  • Remarquez donc que le critère vide est exprimé par les deux guillemets ""
  • Remarquez aussi que nous avons mis une esperluette & entre l’opérateur <> et le critère vide pour que la fonction renvoie le bon résultat.

NB.SI.ENS avec OU

Vous avez sans doute constaté que tous les critères utilisés dans la fonction NB.SI.ENS sont évalués dans les exemples précédents, alors que parfois vous souhaitez que NB.SI.ENS soit effectuée en répondant à un seul caractère au moins,  tout comme l’utilisation d’un OU logique.

Pour utiliser donc la fonction NB.SI.ENS avec OU, la solution consiste à faire l’addition des fonctions NB.SI.ENS associée chacune à son critère.

Exemple 9 : Compter le nombre de cellules contenant Paris et Londres dont les montants réalisés sont supérieurs à 2000 Euros.

  • Sélectionnez une cellule vide et entrez la formule suivante :

=NB.SI.ENS(Ville;"Paris";Montants;">2000")+NB.SI.ENS(Ville;"Londres";Montants;">2000")

NB.SI.ENS avec OU


Dans cet exemple nous avons utilisé une fonction NB.SI.ENS avec le critère Paris et une autre avec le critère Londres, et les deux contiennent aussi le même critère >2000

Pour vous assurer bien de la fonctionnalité de cette formule, faites un filtre des données comme s’est illustré dans l’image animée suivante :

Filtrer des données selon deux critères avec OU logique


La fonction NB.SI.ENS et le VBA

Terminons cet article par une solution à un petit problème qui gêne beaucoup les utilisateurs de VBA Excel (surtout les novices !) lorsqu’ils veulent utiliser la fonction NB.SI.ENS dans leur code VBA.

L’erreur qu’ils commettent c’est qu’ils utilisent la nomination en français de la fonction NB.SI.ENS dans leurs codes et bien sûr ces codes ne fonctionneront pas bien.
C’est tout à fait normal car dans VBA, ils doivent taper la fonction NB.SI.ENS en anglais comme ça : COUNTIFS.


NB.SI.ENS en anglais
PARTAGEZ
    Blogger Comment
    Facebook Comment

80 commentaires:

  1. je cherche de faire la somme de plusieurs cellules en fonction de la date
    si la date est mois de janvier la fonction calcul les cellule correspond le montant et la date de mois de janvier
    merci

    RépondreSupprimer
    Réponses
    1. Tu peux faire un filtrage des données selon le mois de Janvier, consulte le lien suivant tu trouveras des exemples https://formations-excel.blogspot.com/2017/02/somme-cellules-filtrees.html

      Supprimer
  2. BRAVO BRAVO BRAVO ET MERCI !
    Vos explications claires et précises et votre travail HORS PAIR (!) m'a permis de réaliser ce que je souhaitais effectuer !
    J'ai fermé la vingtaine d'autres onglets ouverts sur le sujet NB.SI.ENS ou COUNTIFS et j'ai potassé votre article à fond, c'est le must sur internet.
    Merci !

    RépondreSupprimer
    Réponses
    1. Je vous en prie. heureux de pouvoir vous aider !!

      Supprimer
  3. Oui, vraiment bien comme explication, très claire et surtout très complète. Bravo et merci.

    RépondreSupprimer
  4. je vous salut, merci pour vos cours claire et précis.
    je vous en prie de m'aider sur ces 4 questions.

    1)Je veux calculer le nombre des personnes dont leurs noms se termine par "a" et leurs poids >= 60 Kl. B28:B42 la liste des poids, A28:A42 la liste des noms.
    Cette formule bugs =COUNTIFS(B28:B42,">=60,A28:A42,"*a").

    2)Avec countifs comment contrôler le nombre de visite par mois(C28:C48) des personne de 25ans (D28:D48) sans tenir compte des jours et années. EX: 1/20/1990, 1/30/2000,2/02/2019 etc.

    3)Comment remplacer une formule(Rand par EX) par les résultats générer.

    4)Remplacer un mot en tenir compte de 2 critères.
    EX: Homme Self Brother
    Homme self Sister
    Je dois remplacer Homme par Man si les 2 cellules suivantes contiennent Self et Brother
    par Woman pour Self et Sister.
    un grand merci par avance.

    RépondreSupprimer
    Réponses
    1. 1.Vous avez manqué les guillemets fermants dans ">=60 faites (">=60")
      2.Utilisez DATEDIF intégrée dans NB.SI(Countif) (Consultez article DATEDIF ici : http://formations-excel.blogspot.com/2017/11/la-fonction-datedif.html)
      3.Faites copier des cellules contenant Rand et collez les valeurs uniquement dans collage spécial
      4.Utilisez SI et REMPLACER (IF and REPLACE)
      Dans F1 j’écris Homme Self Brother et dans F2 j’écris Homme self Sister puis dans G1 je tape =SI(F1="Homme Self Brother";REMPLACER(F1;1;5;"Man");SI(F1="Homme self Sister";REMPLACER(F1;1;5;"Waman");""))
      Puis je la copie dans G2

      Voilà, j'espère que c'est résolu!!

      Supprimer
    2. je vous salut, merci bcp pour votre aide. Excuse moi pour le retard.
      1) C'est OK, encore merci.

      2)Ça ne marche pas, je suivis a la lettre le cour "" http://formations-excel.blogspot.com/2017/11/la-fonction-datedif.html "" malheureusement. J'ai En (A1) 1/13/2017, (B1) 2/15/2018). le syntaxe =DATEDIF(A1,B1,"m"), me donne: 2/1/1901.
      Je ne comprend pas le résultat, et d’après le cour ça devais donner le nombre de jours. Aidez moi SvP.

      3) Ça va, encore merci.!

      4)Excuse moi de ne pas mentionner que chaque mot était dans une cellule.
      (A1)Homme, (B1)Self, (C1)Brother et dans
      (A2)Homme, (B2)self, (C2)Sister
      Dans la formule que tu m'as donnée, je ne comprend pas cette partie => REMPLACER(F1;1;5;"Man"),surtout le ""1;5"".

      encore une fois merci de m'aidez, votre travail est supère.

      Supprimer
    3. Salut,
      2) sélectionnez la cellule contenant =DATEDIF(A1,B1,"m") et mettez-la en format Nombre et non date.
      4) Voici la nouvelle formule =SI(ET(A1="Homme";B1="self";C1="brother");"Man";SI(ET(A1="Homme";B1="self";C1="sister");"Waman"))

      pour 1;5 se sont deux arguments de la fonction REMPLACER: 1 est le premier caractère de départ du texte à remplacer (ici Homme se trouve en tête de la chaine textuelle donc on doit commencer du début 'H'), 5 est le nombre de caractère de la partie de la chaine textuelle que vous voulez remplacer (Homme compte 5 lettres)

      Supprimer
  5. Je vous salut, c'est extraordinaire mon frère. Tout(1,2,3 et 4) marche a merveille, vous être sympa et très cool. Je ne trouve pas de mot pour vous remerciez.
    Bon moment a vous. Encore un grand merci.

    RépondreSupprimer
    Réponses
    1. Je vous en prie. Vous êtes toujours le bienvenu!

      Supprimer
  6. Bonjour, je cherche à calculer le nombre de variables selon plusieurs critères mais en retirant les doublons. Une idée ? Ma formule matricielle met beaucoup trop de temps à se calculer...

    RépondreSupprimer
    Réponses
    1. Salut, cette formule est utilisée pour calculer le nombre de valeurs uniques mais dans une colonne : =SOMMEPROD(1/NB.SI(A2:A12;A2:A12))
      vous pourriez m'envoyer un exemple de votre fichier pour voir comment je pourrais vous aider?

      Supprimer
  7. Bonjour,

    Mon problème est le suivant : j'insère une formule via un code VBA, par exemple
    Range("G29").Value = "SOL DIVERS"
    Range("H29").Formula = "=NB.SI(F:F,""SOL DIVERS"")"
    Pour avoir à gauche le nom du défaut est à droite le nombre d'occurrence de celui-ci dans la colonne F.
    Au lieu d'avoir un nombre retourné, j'ai #NOM! qui apparait. Quand j'analyse la formule il semblerait que c'est la formule NB.SI qui cause de soucis.
    Auriez vous une solution ?

    RépondreSupprimer
    Réponses
    1. Bonjour,
      Vous devez saisir le nom de la formule en anglais COUNTIF:
      Range("G29").Value = "SOL DIVERS"
      Range("H29").Formula = "=countif(F:F,""SOL DIVERS"")"

      je vois aussi que vous avez référencé la colonne F qui ne contient pas votre critère SOL DIVERS!

      Supprimer
  8. Bonjour,
    En se basant sur votre exemple, je souhaite ajouter une colonne au tableau et calculer le nombre de vendeurs distincts pour la ville de la ligne. Ainsi Paris aurait 3 vendeurs, Londres 1, Bruxelles 2... Cela me permettrait ensuite de connaitre les villes avec 1 seul vendeur par exemple.

    Merci

    RépondreSupprimer
    Réponses
    1. Salut,
      Vous pouvez créer une colonne des villes sans doublons par exemple dans la colonne D, puis créer une autre dans E qui va afficher le nombre de vendeurs par ville en utilisant NB.SI
      par exemple: Tapez dans E1 =NB.SI($C$2:$C$14;D2)
      $C$2:$C$14 représente la colonne des villes.
      D2 contient le nom Paris
      Exel donc cherchera dans la colonne C le nombre de fois s'est répétée le nom Paris.
      résultat 3
      puis vous copiez vers le bas pour les autres villes.
      ça donnera :
      ville Nb vendeurs
      paris 3
      bruxelles 2
      londres 2
      lisbonne 3
      Madrid 2
      berlin 1

      Supprimer
  9. Presta/D1 Presta/D2 Presta/D3 Presta/R Presta/Nb
    Commerce Commerce

    Comment faire pour que dans Presta/Nb une formule puisse me sortir le nombre de valeurs uniques, sachant que les cellules vont avoir des valeurs vides ?
    Sommeprod(1/Nb) ne fonctionne pas pour moi dû aux valeurs vides.

    RépondreSupprimer
  10. Bonjour,

    Concernant ce qui a été énoncé dans un des 9 CAS :

    Utilisation des critères de type date dans la fonction NB.SI.ENS
    Exemple 5 : Compter le nombre de ventes réalisées entre le 05/04/2017 et le 08/04/2017
    =NB.SI.ENS(A2:A14;">=05/04/2017";A2:A14;"<=08/04/2017")

    J'aimerai savoir comment faire pour réussir un léger changement dans la formule :
    =NB.SI.ENS(A2:A14;">=Y1";A2:A14;"<=Y2")

    Données de la case Y1 : 05/04/2017
    Données de la case Y2 : 08/04/2017

    Je veux absolument que la date soit en dehors de la formule, afin de changer uniquement la date de la cellule dans la colonne Y sans toucher à la formule NB.SI.ENS

    RépondreSupprimer
    Réponses
    1. tapez ceci
      =NB.SI.ENS(A2:A14;">="&Y1;A2:A14;"<="&Y2)

      faites sortir les références des cellules hors des guillemets .

      Supprimer
    2. Bonjour, je passais par là plusieurs années plus tard, mais comme votre réponse correspond exactement à mon problème, je voulais tout naturellement vous remercier. Alors merci !

      Supprimer
    3. Je vous en prie, et je vous remercie à mon tour pour votre fidélité.

      Supprimer
  11. C'est parfait !
    Je vous remercie !

    RépondreSupprimer
  12. Salut. Comment trouver les critaires d'une cellules qui comportent des doublons et les ajouter dans une autre cellule, ensuite dans une dernière cellules le nombre de fois que ces critères apparaissent.
    Merci

    RépondreSupprimer
    Réponses
    1. Bonjour,
      Si vous voulez extraire les doublons puis compter leur nombre vous pouvez utiliser l'outil filtre avancée expliqué ici https://formations-excel.blogspot.com/2016/04/comment-utiliser-des-filtres-elabores.html
      ensuite vous pouvez placer ces doublons dans une colonne et compter leur nombre en utilisant dans une cellule la formule NB.
      Vous pouvez me contacter en m'envoyant un email à travers le formulaire de contact en haut à droite si vous avez d'autres questions

      Supprimer
  13. Bonjour je fait la formule pour connaitre le nombre de cellule avec des chiffre entre 15 et 30. Je rentre la formule comme suit: =NB.SI.ENS(H:H;">15";H:H;"<30") mais lorsque continue le résultat est : 1900-01-05. Je n'arrive pas a comprendre le résultat.

    Merci de votre aide.

    RépondreSupprimer
    Réponses
    1. Bonjour, modifiez le format Date appliqué pour cette cellule et revenez en mode standard.

      Supprimer
  14. Bonjour,
    Merci pour vos explications qui sont en effet très claires.
    Cependant il y a quelque chose que je n'arrive pas à faire. Pourriez-vous m'aider ?
    J'aimerais pouvoir uploader mon fichier mais je ne sais pas comment, alors je vous explique mes données:

    Colonne A avec les noms des clients
    Colonne B avec des montants des devis gagnés (le montant du devis s'il est gagné et 0 sinon)
    Colonne C avec la date de devis

    J'aimerais calculer la somme des devis pour une période donnée (après le 1er avril), ça j'ai réussi en faisant :
    =SOMME.SI.ENS(B2:B12;C2:C12;">=01/04/2020")

    Maintenant il me faut non pas le nombre de devis correspondants, mais le nombre de clients distincts.

    J'ai fait ceci :
    =NB.SI.ENS(C2:C12;">=01/04/2020";B2:B12;">0")
    mais là j'obtiens le nombre de clients pour lesquels les devis ont été signés.

    Il manque la notion "distinct". Voyez-vous ce que je veux dire ?

    Bien sûr, je peux créer une colonne en mettant mes clients distincts.
    Puis caculer les devis pour chacun, etc.
    Le problème c'est que ce tableau est continuellement rempli, et je ne veux pas être obligé de tout le temps ajouter les clients dans la colonne pour faire les calculs. J'ai besoin que cela calcule automatiquement.

    Mais je n'arrive aps à comprendre comment faire cette somme de clients distincts.

    Pourriez-vous m'aider s'il vous plait ?
    Un grand merci d'avance.

    RépondreSupprimer
    Réponses
    1. Je vois que la formule fonctionne bien, mais pour bien vérifier où est l'erreur, veuillez m'écrire en utilisant le formulaire en haut à droit.

      Supprimer
  15. Salut
    je viens de tombé sur votre blog, je trouve très intéressant.
    j'ai un fichier excel dans lequel j'évalue les participants à une conférence quotidienne.Chaque participant est noté par oui, s'il a participé ou par non, s'il n'a pas participé dans la colonne de la date correspondante. L'évaluation se fait de la période du 16 du mois en cours au 15 du mois suivant.
    Mon souci est que, à chaque période, je suis obligé de créer un nouveau fichier, ce qui me fatigue et me donne beaucoup de fichiers.
    Je voudrai utiliser seulement un seul fichier avec trois feuilles dont une servira du résultat où on choisi la période pour afficher le résultat.

    RépondreSupprimer
  16. BJ ABDO et merci des cours clairs et méthode pédagogique magnifique vous etes un excellent pédagogue.

    RépondreSupprimer
  17. Bonjour, pour ma part je cherche une formule qui permet de faire comme si on avait un TCD. L'idée est de trouver un résultat en fonction de plusieurs données (ville, vendeur, type de contrat, etc.). Tout est ok avec nb.si.ens si chacune des variables est complétée. EX: (nb.si.ens (vendeur= alex; ville = londres, etc.). et évidemment chaquevariable fait référence à une cellule et doit rester dans la formule. Mais si pour une de ces variables, j'en veut une qui reprend "tous les choix possibles".
    Ex somme.si (nom=alex; ville = "toutes"; date = toutes; etc.) la notion de "toutes" fait référence à un choix de liste déroulante vide. Mais il faut que je garde la même formule pour pouvoir choisir dans ma liste déroulante une valeur précise plus tard.

    RépondreSupprimer
  18. Bonjour, merci beaucoup pour votre blog trés instructif.
    Pouvez-vous m'apporter votre aide sur ce point ?
    j'ai 2 colonnes CA et CB : et je souhaite savoir combien de fois l'argument CB apparait pour chaque CA ex : X apparait une fois pour A .... X apparait une fois pour E, Y une fois pour E, Z 7 fois pour E ....
    CA CB
    A X
    B Y
    C Y
    C Y
    C Y
    C Y
    C Y
    C X
    C Y
    C Z
    C Y
    D Y
    D Y
    D Y
    D Y
    D Y
    D Y
    E X
    E Y
    E Z
    E Z
    E Z
    E Z
    E Z
    E Z
    E Z
    Merci d'avance

    RépondreSupprimer
    Réponses
    1. Bonjour, Merci infiniement, c'est ce que j'ai essayé de faire sans succès, Merci encore pour votre Blog, Bonne journée

      Supprimer
    2. Bonjour, peut on faire la recherche directement sur la colonne CA pour éviter de recréer la colonne F ? Merci d'avance

      Supprimer
    3. Bonjour,
      La colonne F affiche les valeurs uniques, c'est pourquoi je l'ai crée, mais je peux vous proposer une autre solution si elle vous conviendrait, retéléchargez le fichier précédent je l'ai modifié.

      Supprimer
  19. Bonjour, je ne vois plus le fichier à télécharger ? merci d'avance, Cordialement

    RépondreSupprimer
    Réponses
    1. C'est dans ma première réponse.
      c'est pas grave, revoici le lien Télécharger Fichier excel

      Supprimer
    2. Bonjour, Merci beaucoup pour votre réponse cela fonctionne parfaitement.
      J'aimerai corser le pb en rajoutant la colonne Total D + E pour avoir la somme pour les différents cas ex :
      x y z Total D+E
      A X 1 4 A 1 0 0 4
      B Y 1 3 B 0 1 0 3
      C Y 1 1 C 1 7 1 17
      C Y 2 D 0 6 0 126
      C Y 3 2 E 1 1 7 119
      C Y 4 4
      C Y 5 5
      C X 1 2
      C Y 6 1
      C Z 1 2
      C Y 7
      D Y 1 2
      D Y 2 4
      D Y 3 50
      D Y 4
      D Y 5 70
      D Y 6
      E X 1 1
      E Y 1 3
      E Z 1
      E Z 2 45
      E Z 3
      E Z 4
      E Z 5 40
      E Z 6
      E Z 7 30

      Merci d'avance

      Supprimer
    3. Pardon, j'ai pas bien compris votre question.

      Supprimer
    4. Bonjour, Désolé, j'ai trouvé une solution alternative, e,traitant les colonnes D et E séparémment. Merci encore pour le travail que vous faites !

      Supprimer
  20. Bonjour, J'espère que vous allez bien ?
    Je souhaiterai obtenir les couleurs ou texte en fonction des résultats des equations du tableau suivant :
    Couleur A Logic B Logic C
    Green >=90% AND <=7,5% AND <=10
    Yellow <90% AND/OR 7,5%<= B <=15% AND/OR 10< C <=20
    Red <70% AND >15% OR >20

    Merci d'avance


    RépondreSupprimer
    Réponses
    1. Bonjour,
      Merci je vais bien.
      JE crois que ces conditions sont à rectifier en effet, <=10 inclut automatiquement les valeurs <=7,5
      même chose aussi pour <90% AND/OR <=7,5%.

      Supprimer
  21. Bonjour, J'ai peut être mal formulé l'écriture. en fait chacune des conditions dépend de A, B et C.
    Couleur A Logic B Logic C
    Green A>=90% AND B<=7,5% AND C<=10
    Yellow A<90% AND/OR 7,5%<= B <=15% AND/OR 10< C <=20
    Red A<70% AND B>15% OR C>20

    Le résultat est Green si A>=90% AND B<=7,5% AND c<=10
    Le résultat est Yellow si A<90% (AND/OR) 7,5%<=B<=15% (AND/OR) 1015% OR C>20

    Merci encore

    RépondreSupprimer
    Réponses
    1. Bonsoir,
      Vous allez donc travailler avec la mise en forme conditionnelle.
      Vous sélectionnez votre tableau puis choisissez Nouvelle règle de mise en forme conditionnelle insérez ensuite la première formule =ET($A2>=90;$B2<=7,5;$C2<=10) puis définissez la couleur de remplissage.
      Répétez les mêmes étapes pour les deux autres formules:
      =OU($A2<90;ET($B2>=7,5;$B2<=15);ET($C2>10;$C2<=20))
      =OU(ET($A2<70;$B2>15);$C2>20)

      Supprimer
  22. Bonjour,

    J'ai besoin de compter le nombre de fois où apparaît un nom entre 2 dates. J'ai essayé =NB.SI.ENS(A:A;">="&DATEDÉBUT;A:A;"<="&DATEFIN;B:B;"MOT") et ça me donne #valeur.

    Merci.

    RépondreSupprimer
    Réponses
    1. Bonsoir,
      Je vois que la formule est bien écrite, vérifiez s'il y avait un problème avec les cellules qui référencient les dates ou le mot.

      Supprimer
  23. Bonjour,
    J'ai bien créé une formule qui fonctionne en revanche elle ne s'actualise pas.
    Elle compte correctement à l'instant t mais si je rajoute/modifie une valeur du tableau le compteur ne change pas. Je dois aller dans la formule effacer un caractère et le remettre et là c'est ok.
    Comment faire pour qu'elle s'actualise systématiquement ?
    Merci

    RépondreSupprimer
    Réponses
    1. Bonsoir,
      Sous l'onglet Formule, vous aves une commande "Options de calcul", vérifiez si l'option Automatique est activée ou non!

      Supprimer
  24. Bonjour,
    J'ai actuellement un fichier ou j'utilise la fonction NB.SI.ENS. Cela fonctionne parfaitement mais il me manque une donnée.
    Je souhaiterai que le résultat soit multiplié par la valeur d'une autre cellule. Là où cela se complique c'est que cette valeur n'est pas toujours la même (elle est à définir sur chacune des lignes du tableau.
    Pour faire simple:
    Type d'objet Couleur Nombre
    Rond Vert 3
    Carré Vert 1
    ... ... ...
    Ma fonction NB.ENS.SI m'affiche 1 lorsque les conditions "Rond" et "Vert" sont remplies. Comment je peux multiplier ce 1 par la valeur présente dans ma colonne nombre (ici le 3).

    Merci d'avance pour votre aide, et merci pour vos nombreux éclairages

    RépondreSupprimer
    Réponses
    1. Bonjour,
      Pourquoi ne pas utiliser la fonction ET imbriquée dans SI comme je vous propose dans cette formule:
      SI(ET(A2="Rond";B2="vert");1*C2;"")
      A2 contient Rond , B2 Contient vert et C2 contient 3

      Supprimer
  25. bonjour,
    j'aimerais savoir si il possible dans la formule NB.SI.ENS d'appliquer un produit ? je comptabilise des éléments de base classées par critères et chacun de ces éléments contient un nombre variable de sous élements que je souhaite également comptabiliser et je n'arrive pas a effectuer cette dernière opération. comment intégrer cette fonction?
    merci de vos retours

    RépondreSupprimer
    Réponses
    1. Bonjour,
      Pourriez-vous détailler plus votre question!?

      Supprimer
  26. Merci de votre réponse
    voici concretement mon problème;:
    A partir d'une liste issue de plans de construction, je doit produire un tableau dénombrant le type de matériel a poser (des mats en l’occurrence) par niveau de bâtiment et par zones. j'ai produit ces tableaux et cela fonctionne (grace a vous !) =NB.SI.ENS($D$2:$D$43;M64;$H$2:$H$43;$O$59)
    Sur ces mats sont positionnés des écrans en nombre variés par mats je souhaiterais les comptabiliser avec les mêmes critères. j'imaginais appliquer un produit dans la formule ça bloque ...
    en vous remerçiant de votre aide !

    RépondreSupprimer
    Réponses
    1. Dans ce cas, utilisez SOMME.SI.ENS au lieu de NB.SI.ENS
      =SOMME.SI.ENS(colonne des écrans;colonne des types de matériel;"critère est mats";colonne bâtiment; critère bâtiement;colonne zones; critère zone)

      Supprimer
  27. Bonjour à tous,
    Je suis "débutant" sur excel et je me suis servi de cette page a de nombreuses reprise pour avancer dans la composition de mon tableau Excel. C'est pourquoi je remercie tous les participants et les créateurs de cette page !

    Cependant, je bloqué depuis plusieurs jours sur un problème :

    Je rentre la formule :

    =NB.SI.ENS(B2:F313;"=1";A2:A313;">="&AUJOURDHUI()-90)

    et une fois que j'appuie sur entrée, dans la case apparaît #VALEUR!

    Or, quand les deux ensemble de formule sont séparés dans des cases différentes comme suit :

    =NB.SI(B2:F313;"=1")
    et
    =NB.SI(A2:A313;">="&AUJOURDHUI()-90)

    Alors la les formules fonctionnent parfaitement...

    A noter que la colonne A ne contient que des dates format court (jj/mm/aaaa) et que la plage B2:F313 ne contient que des chiffres. Le tout, sauf a partir de la ligne 205 et suivantes qui, pour l'instant, sont vides mais se remplissent de manière quasi journalière.

    En espérant avoir été clair!
    Merci par avance à ceux qui prendront le temps de se pencher sur mon problème.

    Bonne journée à tous !!

    RépondreSupprimer
    Réponses
    1. Bonjour et bienvenue sur mon blog.
      Le problème de votre formule est du à la référence B2:F313
      qui devra être écrite comme ça : B2:B313
      en effet vous devez référencer une colonne...

      Supprimer
    2. Bonjour, et merci pour votre réponse.
      J'ai bien compris mon erreur du fait que ma plage de sélection contienne 5 colonne au lieu d'une seule. Du coup en additionnant les formules NB.SI.ENS colonne par colonne, effectivement, ça fonctionne.

      En vous remerciant

      Supprimer
    3. Voilà, c'est ça ! et je vous en prie.

      Supprimer
  28. J'ai deux colonnes, A et B, contenant des noms de régions. Je voudrais compter le nombre de fois où apparait une région dans l'une ou l'autre des deux colonnes. Cependant, je ne souhaite pas qu'une région soit comptée deux fois lorsqu'elle apparait sur la même ligne dans les deux colonnes.
    Autrement dit, si A1 = B1, le contenu de l'une des deux cellules doit être ignoré dans le comptage.
    Pour obtenir ce que je voulais, j'ai essayé d'insérer la fonction Excel "Ou()" dans mes critères. Mais, je ne sais comment faire.
    D'où mes deux questions suivantes:
    1. La fonction "nb.si.ens" est-elle appropriée pour ce que je veux? Si oui, comment faire?
    2. La fonction "ou()" peut-elle être utilisée dans les critères de la fonction "nb.si.ens"?
    Merci d'avance pour votre aide.

    RépondreSupprimer
    Réponses
    1. Essayez avec cette solution
      =NB.SI(A2:A10;nom_région)+NB.SI(B2:B10;nom_région)-NB.SI.ENS(A2:A10;nom_région;B2:B10;nom_région)
      Explication:
      =nombre de cellules contenant le nom de région (souhaitée) dans la colonne 1 plus(+) nombre de cellules contenant le nom de région dans la colonne 2 moins (-) nombre de cellules contenant le nom de région dans les deux colonnes et sur la même ligne

      Supprimer
  29. Bonjour,
    J'aimerais calculer le nombre de contrats PAR fournisseur MAIS ayant comme date de fin la date aujourd'hui (j'ai une colonne pour la date de fin de contrat). Le calcul est effectué dans un autre onglet. Merci !

    RépondreSupprimer
    Réponses
    1. Voici un exemple
      NB.SI.ENS(Feuil1!A2:A6;"Fournisseur1";Feuil1!B2:B6;AUJOURDHUI())
      Feuil1!A2:A6: l'onglet (feuille) où se trouve la plage des fournisseurs.
      Feuil1!B2:B6: l'onglet (feuille) où se trouve la plage des dates.

      Supprimer
    2. Merci je vais testé le tout, mais je me suis trompé, j'ai besoin de trouvé les contrats ayant une date de fin plus grande qu'aujourd'hui.

      Supprimer
    3. Voici ce que j'ai écrit comme formule, le résultat me donne des 0 partout comme résultat : NB.SI.ENS('Feuil1'!A3:A75;"=A2";'Feuil1'!M3:M75;">AUJOURDHUI()")

      J'ai même enlevé les "" entre aujourd'hui, mais sans succès.

      Merci encore pour l'aide c'est super apprécié.

      Supprimer
    4. Essayez avec cette formule
      NB.SI.ENS('Feuil1'!A3:A75;A2;'Feuil1'!M3:M75;">"&AUJOURDHUI())

      Supprimer
    5. Super, ça fonctionne. Merci beaucoup :)

      Supprimer
  30. Bonjour,
    Juste une petite question : nb.si.ens ne fonctionne QUE de manière vertical ou est-il possible de l'utiliser dans une base avec des conditions stockées en lignes?
    J'arrive à faire la faire fonctionner avec des tableaux comme les votre mais dès que les données sont orientées de façon horizontales la même formule ne fonctionne plus...
    Merci d'avance!

    RépondreSupprimer
    Réponses
    1. Bonjour,
      ça devrait fonctionner normalement. Avez-vous vérifié si les dimensions des lignes référencées sont les mêmes?!!

      Supprimer

Votre commentaire m'intéresse beaucoup :)