=NB.SI(B2:B8;"<>") compte les cellules de B2:B8 qui ne sont pas vides. <> signifie "différent de", et sans rien derrière, la comparaison se fait avec une cellule vide. =NBVAL(B2:B8) donne le même nombre. NB.SI s'appelle COUNTIF dans un Excel anglais, et NBVAL COUNTA ; le tableau affiche les formules sous cette forme, avec des virgules, mais vous pouvez aussi les taper comme dans un Excel français, avec des points-virgules : =NB.SI(B2:B8;"<>").
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Name | Phone | Count | Result | ||
| 2 | Ana | ana@mail.com | 555-0101 | Emails, COUNTIF | 5 | |
| 3 | Ben | 555-0102 | Emails, COUNTA | 5 | ||
| 4 | Cara | cara@mail.com | Missing emails | 2 | ||
| 5 | Dan | dan@mail.com | 555-0104 | Phones | 4 | |
| 6 | Eva | Rows | 7 | |||
| 7 | Finn | finn@mail.com | 555-0106 | |||
| 8 | Gus | gus@mail.com |
=NB.SI(B2:B8;"<>")Cinq des sept contacts ont une adresse e-mail, donc F2 et F3 affichent toutes deux 5, et NB.VIDE (COUNTBLANK) compte les deux manquantes. Le nombre de cellules remplies et celui des vides totalisent toujours le nombre de lignes de F6. Tapez une adresse en B3 : F2 augmente de un et F4 diminue.
NB.SI non vide ou NBVAL
Pour une seule plage, =NB.SI(B2:B8;"<>") et =NBVAL(B2:B8) comptent les mêmes cellules : tout ce qui n'est pas vide, y compris les nombres, les dates, VRAI/FAUX et les valeurs d'erreur. NBVAL est plus courte. La forme "<>" sert le jour où il faut une seconde condition, car NBVAL n'en accepte pas et NB.SI.ENS si.
NB (COUNT) est une autre fonction : elle ne compte que les nombres et les dates, donc une colonne de noms donne 0. Les trois sont comparées sur NB et NBVAL.
L'inverse de non vide est "" : =NB.SI(B2:B8;"") compte les cellules vides, comme NB.VIDE.
NB.SI.ENS non vide avec une autre condition
Utilisez "<>" comme l'un des critères de NB.SI.ENS (COUNTIFS). Ci-dessous, une date d'expédition signifie que la commande est partie.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Region | Order | Shipped | Condition | Count | |
| 2 | North | A-101 | 2026-01-08 | North, shipped | 2 | |
| 3 | South | A-102 | North, not shipped | 1 | ||
| 4 | North | A-103 | 2026-02-06 | Any region, shipped | 3 | |
| 5 | East | A-104 | 2026-02-20 | Order and date filled | 3 | |
| 6 | South | A-105 | ||||
| 7 | North | A-106 |
=NB.SI.ENS(A2:A7;"North";C2:C7;"<>")F2 compte les deux commandes North qui ont une date, F3 celle qui n'en a pas. F5 place "<>" sur deux colonnes : elle compte les lignes où les deux sont remplies. Le même critère fonctionne dans SOMME.SI.ENS et MOYENNE.SI.ENS : =SOMME.SI.ENS(D2:D7;C2:C7;"<>") additionnerait une colonne de montants D pour les seules lignes expédiées.
Les cellules qui semblent seulement vides
Une cellule contenant une espace paraît vide mais contient du texte, et "<>" comme NBVAL la comptent. Cela arrive avec des données collées depuis d'autres systèmes ou "effacées" en tapant une espace. Comptez les cellules au contenu visible en supprimant les espaces et en vérifiant la longueur.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Name | Note | Count | Result | |
| 2 | Ana | call back | COUNTA | 4 | |
| 3 | Ben | Visible content | 2 | ||
| 4 | Cara | Space in B3? | 1 | ||
| 5 | Dan | paid | |||
| 6 | Eva |
=NBVAL(B2:B6)B3 contient une espace et B6 deux. NBVAL les compte avec les deux vraies remarques et affiche 4. La version SOMMEPROD (SUMPRODUCT) supprime les espaces de chaque cellule et ne compte que celles où il reste quelque chose : 2. Pour nettoyer les cellules elles-mêmes, sélectionnez-les et appuyez sur Suppr, ou utilisez SUPPRESPACE dans une colonne d'aide. Remplacer toutes les espaces par rien avec Rechercher et remplacer transformerait aussi "call back" en "callback".
Les formules qui renvoient une chaîne vide
Une formule comme =SI(C2>0;C2;"") n'affiche rien quand la condition est fausse, mais la cellule n'est pas vide : elle contient une formule dont le résultat est une chaîne vide. Les fonctions de comptage la traitent différemment. Si A2:A6 contient Apple, une formule qui renvoie "", une cellule vide, 5 et Pear, Excel donne :
=COUNTA(A2:A6) 4 counts the "" formula
=COUNTIF(A2:A6,"<>") 4 counts the "" formula
=COUNTBLANK(A2:A6) 2 counts the "" formula as blank
=COUNTIF(A2:A6,"") 2 counts the "" formula as blank
=SUMPRODUCT(--(LEN(A2:A6)>0)) 3 counts only visible content
=COUNTIF(A2:A6,"?*") 2 counts text of at least one character
La cellule de la formule est donc comptée à la fois comme vide et comme non vide, et NBVAL plus NB.VIDE dépasse le nombre de cellules. Quand une colonne est remplie de telles formules, comptez avec =SOMMEPROD(--(NBCAR(A2:A6)>0)), qui ne compte que les cellules affichant quelque chose. Avec une seconde condition : =SOMMEPROD((B2:B6="North")*(NBCAR(A2:A6)>0)).
Exercice : non vide plus une condition
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Name | City | Phone | Count | Result | |
| 2 | Ana | Paris | 555-0101 | Paris with phone | ||
| 3 | Ben | Lyon | 555-0102 | |||
| 4 | Cara | Paris | ||||
| 5 | Dan | Paris | 555-0104 | |||
| 6 | Eva | Lyon | ||||
| 7 | Finn | Nice | 555-0106 | |||
| 8 | Gus | Paris |
À vous : Comptez les contacts de Paris qui ont un numéro de téléphone en colonne C. Écrivez la formule en F2.
Quelle formule utiliser
| Vous voulez compter | Formule |
|---|---|
| Les cellules remplies d'une plage | =NBVAL(B2:B8) |
| Les cellules remplies plus une autre condition | =NB.SI.ENS(A2:A8;"North";B2:B8;"<>") |
| Les lignes où deux colonnes sont remplies | =NB.SI.ENS(B2:B8;"<>";C2:C8;"<>") |
Les cellules au contenu visible, sans les espaces ni les formules "" | =SOMMEPROD(--(NBCAR(SUPPRESPACE(B2:B8))>0)) |
| Seulement les cellules de texte remplies | =NB.SI(B2:B8;"?*") |
| Les cellules vides | =NB.VIDE(B2:B8) |
Pour tester une seule cellule au lieu de compter, =B2<>"" renvoie VRAI quand B2 affiche quelque chose, et =ESTVIDE(B2) ne renvoie VRAI que si B2 est réellement vide, sans formule.
Questions fréquentes
NB.SI avec "<>" est-elle identique à NBVAL ?
Pour une seule plage, oui : =NB.SI(B2:B8;"<>") et =NBVAL(B2:B8) comptent les mêmes cellules (texte, nombres, dates, VRAI/FAUX et erreurs). La forme "<>" sert dans NB.SI.ENS, où elle peut côtoyer une autre condition.
Que signifie "<>" dans NB.SI ?
<> signifie "différent de", et sans rien derrière, la comparaison se fait avec une cellule vide. "<>" signifie donc "non vide", et "<>North" signifie "différent de North".
Comment compter les cellules non vides et différentes de zéro ?
Utilisez =NB.SI.ENS(B2:B8;"<>";B2:B8;"<>0"). Le critère "<>0" seul compte aussi les cellules vides, car une cellule vide n'est pas égale à 0 ; ajouter "<>" les exclut.
Pourquoi NBVAL compte-t-elle des cellules qui semblent vides ?
Elles ne sont pas vides : elles contiennent une espace, ou une formule qui renvoie une chaîne vide "". Pour ne compter que les cellules au contenu visible, utilisez =SOMMEPROD(--(NBCAR(SUPPRESPACE(B2:B8))>0)).