=NB.SI(A2:A8;"*") compte les cellules de A2:A8 qui contiennent du texte. L'astérisque est un caractère générique qui signifie "n'importe quels caractères", et il ne correspond qu'à du texte : les nombres, les dates, VRAI/FAUX et les cellules vides ne sont pas comptés. NB.SI s'appelle COUNTIF dans un Excel anglais ; 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(A2:A8;"*").
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Entry | What | Count | |
| 2 | Apple | Text | 3 | |
| 3 | 12 | Not empty | 6 | |
| 4 | Numbers and dates | 2 | ||
| 5 | Pear | Empty | 1 | |
| 6 | 2026-01-05 | |||
| 7 | TRUE | |||
| 8 | n/a |
=NB.SI(A2:A8;"*")D2 compte Apple, Pear et n/a : 3. NBVAL (COUNTA) compte toutes les cellules remplies, 6, et NB (COUNT) les deux nombres (une date est un nombre). Tapez 25 en A4 : D3 et D4 augmentent alors que D2 reste à 3 ; tapez plutôt Plum : D2 et D3 augmentent alors que D4 reste à 2. NB et NBVAL sont comparées sur leur propre page.
Un nombre tapé précédé d'une apostrophe, comme '007, est du texte, donc "*" le compte. Pour ne compter que les cellules d'au moins un caractère, utilisez "?*" : le ? doit correspondre à un caractère, donc une formule qui renvoie une chaîne vide ("") n'est jamais comptée.
Compter les cellules qui contiennent un texte précis
Pour compter les cellules qui contiennent un mot n'importe où, placez un astérisque de chaque côté. Sans astérisques, toute la cellule doit correspondre.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Product | Condition | Count | |
| 2 | Apple | contains apple | 5 | |
| 3 | Pineapple | exactly apple | 1 | |
| 4 | Pear | starts with apple | 3 | |
| 5 | apple juice | word in C6 | 1 | |
| 6 | Plum | juice | ||
| 7 | Green apple | apple, case-sensitive | 3 | |
| 8 | Apple cider |
=NB.SI(A2:A8;"*apple*")"*apple*" correspond à cinq produits. "apple" seul ne correspond qu'à la cellule qui vaut exactement Apple (NB.SI ignore la casse), et "apple*" aux trois qui commencent par ce mot. D5 prend le mot en C6 : vous pouvez y taper n'importe quel mot. D7 respecte la casse : TROUVE (FIND), contrairement à NB.SI, distingue apple de Apple, donc seuls Pineapple, apple juice et Green apple comptent. Le -- transforme les résultats VRAI/FAUX en 1 et 0 pour que SOMMEPROD (SUMPRODUCT) les additionne.
Si une cellule contient un texte, renvoyer une valeur
Pour marquer chaque ligne, testez une cellule à la fois. CHERCHE("apple";A2) renvoie la position où commence apple, ou #VALEUR! (en anglais #VALUE!) quand le mot est absent. ESTNUM (ISNUMBER) transforme ce résultat en VRAI ou FAUX, et SI choisit le résultat.
| A | B | C | |
|---|---|---|---|
| 1 | Product | Contains apple? | Any text? |
| 2 | Apple | Yes | Text |
| 3 | Pear | No | Text |
| 4 | Pineapple | Yes | Text |
| 5 | 42 | No | Not text |
| 6 | Green apple | Yes | Text |
| 7 | 2026-02-01 | No | Not text |
=SI(ESTNUM(CHERCHE("apple";A2));"Yes";"No")Les deux colonnes sont recopiées vers le bas. B affiche Yes pour Apple, Pineapple et Green apple. C utilise ESTTEXTE (ISTEXT), qui répond à une autre question : la cellule contient-elle du texte, quel qu'il soit. 42 et la date sont des nombres, donc "Not text". Utilisez TROUVE à la place de CHERCHE quand la casse compte. Les deux fonctions, et la raison pour laquelle CHERCHE est celle qui ignore la casse, sont détaillées sur TROUVE et CHERCHE.
=SI(NB.SI(A2;"*apple*");"Yes";"No") fait le même test avec NB.SI : un compte de 1 vaut VRAI et 0 vaut FAUX.
Compter les cellules qui contiennent l'un de plusieurs mots
Additionner deux NB.SI compte deux fois une cellule qui contient les deux mots. Testez plutôt chaque cellule une seule fois : CHERCHE pour chaque mot, additionnez les résultats VRAI, et comptez les lignes où la somme dépasse 0.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Product | Formula | Count | |
| 2 | Apple | Two COUNTIFs | 5 | |
| 3 | Orange juice | Each cell once | 4 | |
| 4 | Pear | |||
| 5 | apple juice | |||
| 6 | Plum | |||
| 7 | Green apple |
=NB.SI(A2:A7;"*apple*")+NB.SI(A2:A7;"*juice*")Quatre produits mentionnent apple ou juice, mais les deux NB.SI donnent 5, car apple juice est compté par les deux. La version SOMMEPROD donne 4.
Exercice : compter les cellules de texte
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Delivery | Weight | What | Count | |
| 2 | D-1 | 12 | Notes | ||
| 3 | D-2 | 9 | |||
| 4 | D-3 | damaged | |||
| 5 | D-4 | 15 | |||
| 6 | D-5 | missing | |||
| 7 | D-6 | ||||
| 8 | D-7 | late |
À vous : Certaines livraisons ont un poids, d'autres une remarque. Comptez les cellules de B2:B8 qui contiennent du texte. Écrivez la formule en E2.
Pourquoi le nombre de cellules de texte est faux
- Les nombres stockés sous forme de texte sont comptés. Une colonne importée d'un autre système peut contenir
'125sous forme de texte."*"la compte, et NB non. Si NB sur une colonne de nombres donne moins que NBVAL, certains sont du texte ; voir nombres stockés sous forme de texte. - Des cellules qui semblent seulement vides. Une cellule contenant une espace est du texte et elle est comptée. Utilisez
=SOMMEPROD(--(NBCAR(SUPPRESPACE(A2:A8))>0))pour compter les cellules qui contiennent des caractères visibles. - VRAI et FAUX ne sont pas du texte.
"*"les ignore, comme il ignore les valeurs d'erreur telles que#N/A. - NB.SI ignore la casse. Pour un comptage sensible à la casse, utilisez TROUVE dans SOMMEPROD, comme dans le deuxième tableau.
Questions fréquentes
Comment compter les cellules qui contiennent du texte dans Excel ?
Utilisez =NB.SI(A2:A8;"*"). L'astérisque correspond à n'importe quel texte : la formule compte chaque cellule de texte et ignore les nombres, les dates, VRAI/FAUX et les cellules vides.
Comment compter les cellules qui contiennent un texte précis ?
Entourez le mot d'astérisques : =NB.SI(A2:A8;"*apple*") compte les cellules qui contiennent apple n'importe où, quelle que soit la casse. Sans les astérisques, "apple" ne compte que les cellules qui valent exactement apple.
Comment écrire "si une cellule contient un texte alors" dans Excel ?
Combinez SI, ESTNUM et CHERCHE : =SI(ESTNUM(CHERCHE("apple";A2));"Yes";"No"). CHERCHE renvoie une position quand elle trouve le texte et une erreur sinon, et ESTNUM transforme ce résultat en VRAI ou FAUX.
Comment vérifier si une cellule contient du texte, quel qu'il soit ?
Utilisez =ESTTEXTE(A2), qui renvoie VRAI pour du texte et FAUX pour les nombres, les dates et les cellules vides. Dans un SI : =SI(ESTTEXTE(A2);"Text";"Not text").