Tutoriel · Excel intermédiaire

NB.SI et NB.SI.ENS

Compter les cellules qui correspondent à un ou plusieurs critères. Avec les opérateurs de comparaison et les jokers pour des comptages précis et puissants.

⏱️ Durée · 20 min 🎚️ Niveau · Intermédiaire 📋 Prérequis · Connaître NB, NBVAL et la fonction SI

🔀 NB.SI vs NB.SI.ENS

NB.SI

=NB.SI(plage ; critère)

Compte les cellules qui correspondent à un seul critère.

  • Idéal pour un comptage simple
  • Texte, nombre, opérateur ou joker
  • Disponible depuis Excel 2003

NB.SI.ENS

=NB.SI.ENS(plage1 ; crit1 ; plage2 ; crit2 …)

Compte les cellules qui correspondent à plusieurs critères simultanément.

  • Jusqu’à 127 paires plage/critère
  • Tous les critères doivent être vrais
  • Disponible depuis Excel 2007
La règle : un seul critère → NB.SI. Deux critères ou plus → NB.SI.ENS.

📘 NB.SI — compter selon un critère

ℹ️
Syntaxe=NB.SI( plage ; critère ) — le critère peut être un texte exact, un nombre, un opérateur de comparaison ou un joker */?.

Exemple 1 — Compter par région

Contexte commercial
Combien de commandes viennent de chaque région ?
Commandes.xlsx
Données
Synthèse
G2fx=NB.SI(A2:A10 ; F2)
ABCFG
1RégionProduitVente €RégionNb commandes
2NordStylo1 200Nord3
3SudCahier800Sud2
4NordCahier950Est1
5EstStylo600
6NordStylo1 100
7SudStylo700
Nord apparaît 3 fois → NB.SI = 3
G2 — critère en cellule F2=NB.SI(A2:A10 ; F2) Ou avec critère en dur=NB.SI(A2:A10 ; « Nord »)

Exemple 2 — Compter avec opérateur (>, <, >=…)

Contexte scolaire
Combien d’élèves ont une note supérieure ou égale à 10 ? Combien sont en dessous ?
Notes.xlsx
Classe
E2fx=NB.SI(B2:B8 ; ">=10")
ABEF
1ÉlèveNote /20≥ 10< 10
2Alice1442
3Bruno17
4Carla7
5Didier12
6Emma8
7Félix10
≥ 10 : Alice, Bruno, Didier, Félix → 4
< 10 : Carla, Emma → 2
E2 — élèves admis (≥ 10)=NB.SI(B2:B8 ; « >=10 ») → 4 F2 — élèves recalés (< 10)=NB.SI(B2:B8 ; « <10 ») → 2 Avec seuil en cellule D2 — dynamique=NB.SI(B2:B8 ; « >= »&D2)

Exemple 3 — NB.SI avec joker * (contient)

Contexte formation
Combien de formations contiennent le mot « Excel » dans leur intitulé ?
Formations.xlsx
Inscriptions
E2fx=NB.SI(B2:B8 ; "*Excel*")
ABE
1StagiaireFormationNb formations Excel
2AliceExcel débutant3
3BrunoWord avancé
4CarlaExcel TCD
5DidierPowerPoint
6EmmaExcel VBA
7FélixOutlook
« *Excel* » attrape : Excel débutant, Excel TCD, Excel VBA → 3
E2 — formations contenant « Excel »=NB.SI(B2:B8 ; « *Excel* ») → 3 Avec le mot-clé en cellule F1 — dynamique=NB.SI(B2:B8 ; « * »&F1&« * »)

📗 NB.SI.ENS — compter selon plusieurs critères

ℹ️
Syntaxe=NB.SI.ENS( plage1 ; critère1 ; plage2 ; critère2 … )
Chaque paire plage/critère est un filtre supplémentaire. Tous les critères doivent être vrais simultanément pour qu’une ligne soit comptée.

Exemple 4 — Commandes Nord ET Stylo

Contexte commercial
Combien de commandes viennent de la région Nord ET concernent des Stylos ?
Commandes.xlsx
Données
G2fx=NB.SI.ENS(A2:A10 ; "Nord" ; B2:B10 ; "Stylo")
ABCG
1RégionProduitVente €Nord + Stylo
2NordStylo1 2002
3SudCahier800
4NordCahier950
5EstStylo600
6NordStylo1 100
7SudStylo700
Lignes 2 et 6 : Nord ET Stylo → 2 · Ligne 4 : Nord mais Cahier → ignorée · Ligne 5 : Stylo mais Est → ignorée
G2 — Nord ET Stylo=NB.SI.ENS( A2:A10 ; « Nord » ; ← critère 1 : région B2:B10 ; « Stylo » ← critère 2 : produit )

Exemple 5 — Dossiers en attente depuis plus de 7 jours

Contexte administratif
Compter les dossiers dont le statut est « En attente » ET la date de création est antérieure à 7 jours
Dossiers.xlsx
Suivi
F2fx=NB.SI.ENS(C2:C8;"En attente";B2:B8;"<"&(AUJOURDHUI()-7))
ABCF
1DossierCréé leStatutEn attente >7j
2D-00110/09/2026En attente2
3D-00220/09/2026En attente
4D-00308/09/2026En attente
5D-00415/09/2026Traité
6D-00522/09/2026En attente
D-001 (10/09) et D-003 (08/09) : « En attente » ET créés il y a plus de 7 jours → 2
F2 — dossiers en attente depuis plus de 7 jours=NB.SI.ENS( C2:C8 ; « En attente » ; ← statut B2:B8 ; « <« &(AUJOURDHUI()-7) ← date antérieure à J-7 )
💡
Combiner opérateur et formule"<"&(AUJOURDHUI()-7) — l’opérateur entre guillemets, le & pour coller, la formule entre parenthèses. Fonctionne avec toutes les fonctions de date Excel.

Exemple 6 — Stagiaires d’une ville ET d’une formation Excel

Contexte formation A3I
Combien de stagiaires viennent de Lille ET suivent une formation contenant « Excel » ?
Critère texte ET joker dans NB.SI.ENS=NB.SI.ENS( C2:C10 ; « Lille » ; ← ville B2:B10 ; « *Excel* » ← formation contenant Excel )
⚠️ Le piège classique — toutes les plages doivent avoir la même taille
Dans NB.SI.ENS, toutes les plages doivent couvrir le même nombre de lignes. A2:A10 et B2:B8 → erreur. Utilisez A2:A10 et B2:B10.

📋 Récapitulatif NB.SI et NB.SI.ENS

BesoinFormule
Compter les « Nord » dans A=NB.SI(A2:A10 ; "Nord")
Compter les notes ≥ 10=NB.SI(B2:B8 ; ">=10")
Compter ce qui contient « Excel »=NB.SI(B2:B8 ; "*Excel*")
Compter les Nord ET Stylo=NB.SI.ENS(A2:A10 ; "Nord" ; B2:B10 ; "Stylo")
Compter avec opérateur + cellule=NB.SI(B2:B8 ; ">="&D2)
Compter avec opérateur + formule date=NB.SI.ENS(C:C ; "En attente" ; B:B ; "<"&(AUJOURDHUI()-7))
Compter avec joker dynamique=NB.SI(B2:B8 ; "*"&F1&"*")