La fonction ESTNONTEXTE (ISNONTEXT en anglais) teste si une valeur n'est PAS du texte et retourne VRAI ou FAUX. Elle est indispensable quand tu dois valider que des données saisies ou importées sont bien numériques, notamment dans les formulaires, les imports de fichiers ou les contrôles qualité.
Concrètement, c'est elle qui te permet de détecter automatiquement les erreurs de saisie dans un formulaire de budget, de signaler les cellules problématiques après un import CSV, ou de construire un pipeline de validation des données avant de lancer tes calculs financiers.
Syntaxe de la fonction ESTNONTEXTE
=ESTNONTEXTE(valeur)Comprendre chaque paramètre de la fonction ESTNONTEXTE
valeur
: la valeur que tu veux testerIl peut s'agir d'une référence de cellule (A1), d'un résultat de formule, ou d'une valeur directe. ESTNONTEXTE évalue le résultat final (pas la formule elle-même) et retourne VRAI ou FAUX selon le type.
Types de valeurs et résultats attendus : nombres (123, -45,6) → VRAI, dates et heures → VRAI, booléens (VRAI/FAUX) → VRAI, erreurs (#N/A, #DIV/0!) → VRAI, cellules vides → VRAI, texte pur ("Bonjour") → FAUX, nombres stockés en texte ("123" avec apostrophe) → FAUX.
Astuce : Pour tester uniquement les nombres (sans les erreurs ni les cellules vides), combine ESTNONTEXTE avec ESTNUM : =ET(ESTNONTEXTE(A1); ESTNUM(A1)). Ca retourne VRAI uniquement pour les vrais nombres.
Attention : Les cellules vides retournent VRAI avec ESTNONTEXTE. Si tu valides un formulaire où le vide est invalide, ajoute un test : =ET(ESTNONTEXTE(A1); NON(ESTVIDE(A1))).
Pas envie d'écrire la formule ESTNONTEXTE à la main ?
Génère-la avec notre IAExemples pratiques pas à pas
Assistant administratif : valider un formulaire de saisie de budget
Tu es assistant administratif et tu dois valider que tous les montants saisis dans un formulaire de budget sont bien des nombres. Certains utilisateurs saisissent parfois du texte par erreur ("N/A", "à définir", "en attente").
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Poste | Montant saisi | Validation | Message |
| 2 | Marketing | 15000 | VRAI | OK |
| 3 | IT | à définir | FAUX | ERREUR : Saisir un nombre |
| 4 | RH | 8500 | VRAI | OK |
| 5 | Formation | N/A | FAUX | ERREUR : Saisir un nombre |
=ESTNONTEXTE(B2)La fonction renvoie VRAI quand le montant est numérique et FAUX quand c'est du texte (« à définir », « N/A »). Enrobée dans un SI, elle affiche un message du type « ERREUR : Saisir un nombre » et te signale immédiatement les cellules à corriger.
Astuce de pro : Applique cette formule de validation dans une colonne dédiée, puis utilise une mise en forme conditionnelle pour surligner en rouge les lignes où la validation retourne FAUX.
Data analyst : contrôle qualité d'un fichier importé
Tu es data analyst et tu viens d'importer un fichier CSV contenant les chiffres d'affaires mensuels. Certaines cellules contiennent du texte au lieu de nombres à cause d'erreurs d'export. Tu dois identifier combien de lignes sont problématiques avant de lancer ton analyse.
| A | B | C | |
|---|---|---|---|
| 1 | Mois | CA | Type détecté |
| 2 | Janvier | 45000 | Nombre |
| 3 | Février | erreur système | Texte |
| 4 | Mars | 52000 | Nombre |
| 5 | Avril | données manquantes | Texte |
| 6 | Mai | 48000 | Nombre |
=SI(ESTNONTEXTE(B2); "Nombre"; "Texte")Ici, la formule étiquette chaque ligne « Nombre » ou « Texte » selon le type du CA importé. En un coup d'œil, tu repères les cellules de février et avril qui contiennent du texte au lieu d'un chiffre, et tu sais lesquelles nettoyer avant l'analyse.
Responsable logistique : filtrer les codes articles numériques
Tu es responsable logistique et ton système utilise deux types de codes articles : des codes purement numériques (123456) pour les produits standards, et des codes alphanumériques (ABC-123) pour les produits spéciaux. Tu dois séparer les deux catégories automatiquement.
| A | B | |
|---|---|---|
| 1 | Code article | Catégorie |
| 2 | 123456 | Standard |
| 3 | ABC-789 | Spécial |
| 4 | 987654 | Standard |
| 5 | XYZ-123 | Spécial |
| 6 | 456789 | Standard |
=SI(ESTNONTEXTE(A2); "Standard"; "Spécial")La formule classe l'article en « Standard » ou « Spécial » selon le type de son code. Ça marche parce qu'Excel stocke les codes purement numériques comme des nombres et les codes alphanumériques (ABC-789) comme du texte. Tu peux ensuite filtrer ou compter chaque catégorie pour tes rapports de stock.
Attention : Si certains codes numériques ont été saisis avec une apostrophe ou importés en format texte, ils seront classés comme "Spécial". Vérifie le format des cellules (triangle vert en haut à gauche) avant de te fier au résultat.
Contrôleur de gestion : vérifier la conformité des données avant calcul
Tu es contrôleur de gestion et tu dois calculer des ratios financiers. Avant de lancer tes formules, tu veux vérifier que toutes les données sources sont bien numériques pour éviter les erreurs #VALEUR! dans tes calculs.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Indicateur | Valeur | Calculable ? | Action |
| 2 | Chiffre d'affaires | 500000 | OUI | Calculer ratio |
| 3 | Marge brute | en attente | NON | Demander donnée |
| 4 | Charges fixes | 120000 | OUI | Calculer ratio |
| 5 | EBITDA | à valider | NON | Demander donnée |
=SI(ESTNONTEXTE(B2); "OUI"; "NON")Ici, la formule indique « OUI » quand la valeur source est numérique (donc calculable) et « NON » quand c'est du texte comme « en attente ». Tu obtiens une colonne de contrôle qui te liste d'office les données manquantes à collecter avant de finaliser tes ratios.
Envie de t'entraîner sur de vrais exercices Excel ?
M'entraînerLes erreurs fréquentes avec la fonction ESTNONTEXTE
Le faux pas qui revient le plus, c'est de croire qu'ESTNONTEXTE isole les nombres. En réalité elle dit VRAI à tout ce qui n'est pas du texte : un #N/A, un VRAI/FAUX, et même une cellule vide passent le test. Du coup un formulaire vide est validé à tort.
L'autre piège vient des imports : un nombre saisi avec une apostrophe ('123) devient du texte aux yeux d'Excel, et là c'est l'inverse qui te surprend, ESTNONTEXTE renvoie FAUX sur ce qui ressemble pourtant à un chiffre.
Confondre ESTNONTEXTE et ESTNUM
ESTNONTEXTE retourne VRAI pour tout ce qui n'est pas du texte : les nombres, mais aussi les cellules vides, les erreurs (#N/A, #DIV/0!), et les booléens (VRAI/FAUX). Si tu veux tester uniquement les nombres, ESTNONTEXTE ne suffit pas.
Solution : Utilise =ESTNUM(A1) pour tester uniquement les nombres. Ou combine : =ET(ESTNONTEXTE(A1); ESTNUM(A1)) si tu veux être explicite sur les deux conditions.
Les cellules vides créent des faux positifs
Une cellule vide n'est pas du texte, donc =ESTNONTEXTE(A1) retourne VRAI si A1 est vide. Dans un formulaire de saisie, ça peut valider à tort des cellules non remplies.
Solution : Combine avec ESTVIDE pour exclure les cellules vides : =ET(ESTNONTEXTE(A1); NON(ESTVIDE(A1))). Ça retourne VRAI uniquement si la cellule contient une valeur non-texte.
Nombres stockés en texte classés comme texte
Après un import CSV ou une saisie avec apostrophe, des nombres peuvent être stockés en format texte. '123 (apostrophe + 123) est considéré comme du texte par Excel. ESTNONTEXTE retournera FAUX même si ça ressemble à un nombre.
Solution : Convertis d'abord le texte en nombre avec =CNUM(A1) ou multiplie par 1 : =A1*1. Le triangle vert en haut à gauche de la cellule signale les nombres stockés en texte.
ESTNONTEXTE vs ESTTEXTE vs ESTNUM vs ESTVIDE
| Type de valeur | ESTNONTEXTE | ESTTEXTE | ESTNUM | ESTVIDE |
|---|---|---|---|---|
| Nombre (123) | VRAI | FAUX | VRAI | FAUX |
| Texte ("Bonjour") | FAUX | VRAI | FAUX | FAUX |
| Cellule vide | VRAI | FAUX | FAUX | VRAI |
| Erreur (#N/A) | VRAI | FAUX | FAUX | FAUX |
| Booléen (VRAI/FAUX) | VRAI | FAUX | FAUX | FAUX |
| Cas d'usage principal | Exclure le texte | Détecter le texte | Valider les nombres | Détecter le vide |
Astuces avancées avec ESTNONTEXTE
Compter les cellules non-texte avec SOMMEPROD
Pour compter combien de cellules dans une plage ne contiennent pas de texte, utilise =SOMMEPROD(ESTNONTEXTE(A1:A100)*1). Le *1 convertit VRAI en 1 et FAUX en 0, puis SOMMEPROD additionne les résultats.
C'est plus souple que NB.SI car ça fonctionne avec n'importe quelle plage et ne nécessite pas de valeur cible à spécifier.
Construire une validation stricte à trois niveaux
Pour accepter uniquement les nombres (pas les vides, pas les erreurs, pas les booléens) : =ET(ESTNONTEXTE(A1); ESTNUM(A1); NON(ESTVIDE(A1))). Les trois conditions ensemble forment une validation robuste.
Utilise cette formule dans la règle de validation des données (Données > Validation) pour bloquer la saisie de non-nombres dès l'entrée.
Créer un diagnostic complet du type de cellule
Combine plusieurs fonctions EST pour obtenir un rapport qualité détaillé : =SI(ESTVIDE(A1); "Vide"; SI(ESTTEXTE(A1); "Texte"; SI(ESTNUM(A1); "Nombre"; "Autre"))). Ce diagnostic classifie chaque cellule en Vide, Texte, Nombre ou Autre (erreur, booléen).
Parfait pour auditer rapidement la qualité d'un fichier importé avant traitement.
Questions fréquentes sur la fonction ESTNONTEXTE
Quelle est la différence entre ESTNONTEXTE et NON(ESTTEXTE) ?
=ESTNONTEXTE(A1) est strictement équivalent à =NON(ESTTEXTE(A1)). ESTNONTEXTE est juste plus court et plus lisible. C'est une fonction dédiée qui évite d'imbriquer deux fonctions.
Les cellules vides retournent VRAI ou FAUX avec ESTNONTEXTE ?
VRAI. Une cellule vide n'est pas du texte, donc ESTNONTEXTE retourne VRAI. Si tu veux exclure les cellules vides de ton test, combine avec ESTVIDE : =ET(ESTNONTEXTE(A1); NON(ESTVIDE(A1))).
Comment filtrer uniquement les nombres avec ESTNONTEXTE ?
ESTNONTEXTE seul ne suffit pas pour filtrer uniquement les nombres : il retourne VRAI pour les nombres, mais aussi pour les erreurs, les booléens et les cellules vides. Pour cibler uniquement les nombres, utilise ESTNUM, ou combine les deux : =ET(ESTNONTEXTE(A1); ESTNUM(A1)).
ESTNONTEXTE fonctionne-t-elle avec les résultats de formules ?
Oui, ESTNONTEXTE évalue le résultat final de la formule, pas la formule elle-même. Si =A1&B1 produit "Bonjour", ESTNONTEXTE retournera FAUX car le résultat est du texte. Si =10*2 produit 20, elle retournera VRAI car le résultat est un nombre.
Peut-on utiliser ESTNONTEXTE pour valider des imports CSV ?
Oui, c'est très pratique. Les imports CSV contiennent souvent des données mixtes ou du texte là où tu attends des nombres. ESTNONTEXTE te permet de détecter les cellules problématiques et de les signaler pour nettoyage avant traitement.
Combine avec =SOMMEPROD(ESTTEXTE(B2:B100)*1) pour compter le nombre total d'anomalies en un seul calcul.
Pour aller plus loin
Bloqué sur une formule Excel ?
Pose ta question à notre assistant Excel IA, il te sort la bonne formule en quelques secondes.
Essayer l'assistant IAGratuit · 10 questions par mois

