FormulaCamp
Tous les guides Excel
Guides pratiques Excel

Compter les cellules avec du texte dans Excel

Comptez les cellules de texte dans Excel avec COUNTIF, COUNTA et SUMPRODUCT, en gérant cellules vides, formules et caractères génériques.

Compter le texte avec COUNTIF

Le caractère générique astérisque représente n’importe quelle suite de caractères ; =COUNTIF(A2:A100,"*") compte donc les cellules qui contiennent du texte. Elle ne compte ni les nombres ordinaires, ni les dates enregistrées sous forme de numéros de série, ni les valeurs logiques, ni les erreurs, ni les cellules réellement vides. C’est généralement la bonne réponse pour une colonne qui mélange libellés et nombres.

Pour compter le texte qui contient un mot, utilisez un motif comme =COUNTIF(A2:A100,"*pending*"). Les caractères génériques ne sont pas sensibles à la casse. Pour compter un astérisque littéral, faites-le précéder d’un tilde : =COUNTIF(A2:A100,"~*"). Décidez si les correspondances partielles sont acceptables avant de choisir le motif.

Pour un libellé exact, retirez les caractères génériques : =COUNTIF(A2:A100,"Open"). Pour tout compter sauf un libellé, =COUNTIF(A2:A100,"<>Open") compte aussi les cellules vides ; soustrayez donc COUNTBLANK(A2:A100) quand les vides ne doivent pas faire partie de la réponse. Quand plusieurs conditions s’appliquent, passez à COUNTIFS et gardez toutes les plages à la même taille, par exemple une colonne de statut et une colonne de région.

Savoir quand COUNTA diffère

=COUNTA(A2:A100) compte toutes les valeurs non vides : texte, nombres, dates, erreurs, TRUE/FALSE et formules qui renvoient une chaîne vide. Elle répond à « combien de cellules contiennent quelque chose ? » plutôt qu’à « combien de cellules contiennent du texte ? ». COUNT ne compte que les valeurs numériques ; ni COUNT ni COUNTA ne remplacent donc le caractère générique de texte quand la colonne est mixte.

Une cellule d’apparence vide peut contenir une formule renvoyant "", une espace ou une apostrophe. Le résultat "" d’une formule est du texte : COUNTIF(range,"*") et COUNTA le comptent donc toutes deux. Pour ne compter que le texte d’au moins un caractère, utilisez =COUNTIF(A2:A100,"?*"). Inspectez les cellules suspectes avec LEN avant de construire un indicateur de tableau de bord.

Utiliser SUMPRODUCT pour un test de texte explicite

Pour une vérification de type explicite, =SUMPRODUCT(--ISTEXT(A2:A100)) compte les valeurs pour lesquelles ISTEXT vaut TRUE. Ce schéma est utile quand vous voulez que l’intention soit sans ambiguïté, ou quand vous devez combiner le test de type avec d’autres conditions. Gardez des plages bornées : les calculs matriciels sur des colonnes entières peuvent être coûteux dans de gros classeurs.

Si les espaces ne doivent pas compter comme du texte significatif, testez-les séparément, par exemple avec une colonne d’aide =LEN(TRIM(A2))>0. TRIM supprime les espaces ordinaires mais pas forcément tous les caractères insécables importés ; corriger la source vaut donc généralement mieux que compenser dans chaque formule de synthèse.

Erreurs fréquentes

COUNTIF avec "*" ne compte pas les cellules non vides, et COUNTA ne compte pas uniquement le texte. Les dates comptent normalement comme des nombres bien qu’elles s’affichent comme du texte, et les nombres enregistrés comme texte comptent comme du texte. Une formule stable appliquée à des données instables donne des totaux instables : vérifiez les types de la source quand un décompte change après un import. Comparez le décompte de texte à COUNTA et COUNT sur la même plage : texte plus nombres plus valeurs logiques doivent égaler le total des cellules non vides, et tout écart signale des erreurs ou des cellules inhabituelles à examiner avant de reporter le chiffre dans un rapport.

À vous de jouer

En C2, comptez les cellules de texte de A2:A6.

Feuille d’exemple : colonne de statuts mixtes
ABC
1ValueText count
2Open
312
4Closed
58
6Pending
Pas encore résolu.

Exemple vérifié

Une colonne de statut qui mélange du texte, un nombre, un nombre formaté en texte (007), une valeur logique et une cellule vide.

A
1Value
2Open
312
4007
5Closed
6TRUE
7
8Pending
FormuleRésultat
=COUNTIF(A2:A8,"*")4
=COUNTA(A2:A8)6
=COUNT(A2:A8)1
=SUMPRODUCT(--ISTEXT(A2:A8))4
=COUNTIF(A2:A8,"*e*")3
=COUNTBLANK(A2:A8)1

Erreurs fréquentes

  • Utiliser COUNTA quand les valeurs numériques doivent être exclues.
  • Supposer qu’une date affichée est enregistrée comme du texte.
  • Ignorer les cellules contenant des espaces ou des formules qui renvoient des chaînes vides.

Questions fréquentes

COUNTIF(range,"*") compte-t-elle les nombres ?

Non. Elle compte les valeurs de texte, y compris le texte qui ressemble à un nombre.

Comment compter les cellules non vides ?

Utilisez COUNTA, mais n’oubliez pas que les formules renvoyant une chaîne vide restent des valeurs pour COUNTA.

Comment compter le texte contenant un mot ?

Utilisez un critère à caractères génériques comme =COUNTIF(A2:A100,"*open*").

COUNTIF distingue-t-elle les majuscules des minuscules ?

Non. Utilisez une formule plus spécialisée si les majuscules et les minuscules doivent être distinguées.

Mettre la compétence en pratique

Poursuivez avec une leçon FormulaCamp vérifiée (en anglais) : Counting: COUNT, COUNTA, COUNTBLANK (en anglais) Gratuit

Ouvrir la leçon gratuite (en anglais)