ESTERR (ISERR en anglais) renvoie VRAI si une valeur est une erreur Excel à l'exception de #N/A. Elle permet de détecter les vrais problèmes de calcul (#DIV/0!, #VALEUR!, #REF!, #NUM!, #NOM?, #NUL!) tout en ignorant les erreurs #N/A qui sont souvent intentionnelles dans les recherches.
C'est la fonction qu'on utilise quand on veut construire des tableaux de bord professionnels sans erreurs brutes affichées, sécuriser des formules de calcul de ratios et de marges, ou auditer une feuille de calcul en comptant les zones problématiques. Elle s'utilise presque toujours combinée avec SI : =SI(ESTERR(formule);"message alternatif";formule) remplace silencieusement une erreur technique par un texte compréhensible.
Syntaxe de la fonction ESTERR
=ESTERR(valeur)Une cellule vide n'est pas une erreur : ESTERR sur une cellule vide renvoie FAUX. Pour tester les cellules vides, utilise ESTVIDE(). De même, le texte "ERREUR" n'est pas une erreur Excel au sens technique : ESTERR renvoie FAUX.
Comprendre chaque paramètre de la fonction ESTERR
valeur
: la valeur, référence de cellule ou formule à testerESTERR évalue cette valeur et vérifie si elle produit une erreur Excel parmi : #DIV/0!, #VALEUR!, #REF!, #NUM!, #NOM?, #NUL!.
La valeur est calculée au moment du test. Si tu passes A1/B1 directement, Excel évalue la division et teste le résultat, sans afficher l'erreur dans la cellule.
Attention : Dans =SI(ESTERR(A1/B1);0;A1/B1), la division A1/B1 est calculée deux fois (une pour le test, une pour le résultat). Pour les formules complexes et coûteuses en calcul, préfère stocker le résultat dans une cellule intermédiaire ou utilise SIERREUR qui évalue une seule fois.
Exemples pratiques pas à pas
Finance : détecter une division par zéro dans les ratios
Tu gères des tableaux de calcul de ratios financiers. La division par zéro est l'erreur la plus courante dans les calculs de marges ou de taux, notamment quand une colonne de coûts contient des zéros en attente de saisie.
=ESTERR(A2/B2) teste si la division produit une erreur avant d'afficher le résultat. Tu peux ensuite combiner avec SI pour remplacer l'erreur par une valeur par défaut ou un message : =SI(ESTERR(A2/B2);0;A2/B2).
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Ventes | Coûts | ESTERR(A/B) | Interprétation |
| 2 | 1 000 | 0 | VRAI | Division par zéro détectée |
| 3 | 1 500 | 800 | FAUX | Calcul valide |
| 4 | 2 000 | 2 000 | FAUX | Division valide (=1) |
=ESTERR(A2/B2)Tableau de bord : remplacer les erreurs brutes par un message
Tu prépares un tableau de bord destiné à la direction. Les erreurs brutes (#DIV/0!, #VALEUR!) sont illisibles pour des non-techniciens et donnent une mauvaise impression de qualité.
Combine ESTERR avec SI pour afficher un texte personnalisé : =SI(ESTERR(A2/B2);"Impossible";A2/B2) remplace silencieusement l'erreur technique par un message compréhensible. Le tableau reste professionnel même quand certaines données manquent.
| A | B | C | |
|---|---|---|---|
| 1 | Dividende | Diviseur | Résultat affiché |
| 2 | 100 | 5 | 20 |
| 3 | 50 | 0 | Impossible |
| 4 | 80 | 4 | 20 |
=SI(ESTERR(A2/B2);"Impossible";A2/B2)Validation : différence avec ESTERREUR face au #N/A
L'erreur #N/A apparaît fréquemment dans les fonctions de recherche comme RECHERCHEV ou RECHERCHEX quand une valeur n'est pas trouvée. Dans de nombreux contextes, cette erreur est normale et attendue.
ESTERR ignore intentionnellement #N/A, ce qui te permet de détecter les vraies erreurs de calcul sans déclencher d'alerte sur les #N/A intentionnels. Utilise ESTERREUR si tu veux attraper absolument toutes les erreurs sans exception.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Valeur testée | ESTERR | ESTERREUR | Explication |
| 2 | #DIV/0! | VRAI | VRAI | Les deux détectent |
| 3 | #N/A | FAUX | VRAI | Seule ESTERREUR détecte |
| 4 | #VALEUR! | VRAI | VRAI | Les deux détectent |
| 5 | 100 | FAUX | FAUX | Pas d'erreur |
=ESTERR(A2)Astuce de pro : Utilise ESTERR avec RECHERCHEV quand le « non trouvé » (#N/A) est un résultat normal attendu. Utilise ESTERREUR seulement quand tu veux détecter toutes les erreurs sans distinctions.
Mathématique : valider une formule RACINE avant affichage
La fonction RACINE renvoie #NUM! si la valeur est négative. Dans un tableau de calcul technique, cela bloque la lecture et peut propager l'erreur dans les formules suivantes.
=SI(ESTERR(RACINE(A2));"Nombre négatif";RACINE(A2)) détecte l'erreur avant qu'elle ne s'affiche et renvoie un message explicite. Cette approche s'adapte à n'importe quelle fonction mathématique susceptible de produire #NUM! (logarithme, puissance, etc.).
| A | B | C | |
|---|---|---|---|
| 1 | Nombre | Test ESTERR | Racine sécurisée |
| 2 | 25 | FAUX | 5 |
| 3 | -4 | VRAI | Nombre négatif |
| 4 | 0 | FAUX | 0 |
| 5 | 100 | FAUX | 10 |
=SI(ESTERR(RACINE(A2));"Nombre négatif";RACINE(A2))Audit : compter les erreurs dans une plage
Tu audites une feuille de calcul complexe et tu veux savoir combien de cellules contiennent des erreurs techniques (hors #N/A) sur chaque ligne, pour identifier les zones problématiques en priorité.
=SOMMEPROD(--(ESTERR(B2:E2))) évalue ESTERR sur toute la plage et compte les VRAI. Le -- convertit les valeurs logiques en 0/1. Pour auditer toute la feuille, utilise =SOMMEPROD(--(ESTERR(A1:Z100))) et affiche le résultat en rouge si supérieur à 0.
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Résultats calculs | A | B | C | D | Nb erreurs |
| 2 | Ligne 1 | 100 | #DIV/0! | 50 | #VALEUR! | 2 |
| 3 | Ligne 2 | 75 | 80 | #REF! | 90 | 1 |
| 4 | Ligne 3 | 60 | 70 | 80 | 90 | 0 |
=SOMMEPROD(--(ESTERR(B2:E2)))Formule imbriquée : sécuriser une chaîne de calculs
Dans une formule de calcul de prix TTC multi-étapes, si l'un des composants (prix, taux, quantité) contient une erreur, le résultat final sera lui aussi une erreur. Pire, cette erreur peut se propager dans d'autres formules et bloquer tout le tableau.
=SI(OU(ESTERR(A2);ESTERR(B2);ESTERR(C2));"Erreur calcul";A2*(1+B2)*C2) vérifie chaque composant avant d'effectuer le calcul final. Si l'un des trois éléments est en erreur, la formule affiche un message et s'arrête proprement.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Prix HT | Taux TVA | Quantité | Prix TTC total |
| 2 | 100 | 0,2 | 5 | 600 |
| 3 | 50 | 0 | 10 | Erreur calcul |
| 4 | 75 | 0,2 | 8 | 720 |
=SI(OU(ESTERR(A2);ESTERR(B2);ESTERR(C2));"Erreur calcul";A2*(1+B2)*C2)Données : tester si un texte est convertible en nombre
Lors d'imports de données depuis des fichiers CSV ou des systèmes tiers, certaines colonnes censées contenir des nombres peuvent avoir des valeurs texte non convertibles. Il faut les identifier avant tout calcul.
=ESTERR(CNUM(A2)) teste si CNUM réussit la conversion. Si la cellule contient du texte non numérique, CNUM produit #VALEUR! et ESTERR renvoie VRAI. Tu peux ensuite filtrer ou corriger les lignes problématiques.
| A | B | C | |
|---|---|---|---|
| 1 | Texte | Test conversion | Résultat |
| 2 | "123" | FAUX | Convertible |
| 3 | "abc" | VRAI | Non convertible |
| 4 | "45.7" | FAUX | Convertible |
| 5 | "12a5" | VRAI | Non convertible |
=ESTERR(CNUM(A2))Envie de t'entraîner sur de vrais exercices Excel ?
M'entraînerLes erreurs fréquentes avec la fonction ESTERR
Le malentendu qui revient le plus avec ESTERR, c'est de croire qu'elle voit tout : elle ferme volontairement les yeux sur le #N/A. Branchée sur une RECHERCHEV qui ne trouve pas, elle renvoie FAUX et laisse passer le calcul, d'où des résultats faux en cascade.
Les autres faux pas viennent de ce qu'elle ne reconnaît QUE les vraies erreurs Excel : un texte que tu as toi-même tapé comme "ERREUR" ou une cellule vide lui renvoient FAUX, et une formule lourde glissée deux fois dans un SI(ESTERR(...)) se recalcule deux fois.
Confusion entre ESTERR et ESTERREUR : le #N/A n'est pas détecté
ESTERR exclut intentionnellement #N/A. Si tu l'utilises pour valider une RECHERCHEV et que la valeur n'est pas trouvée, ESTERR renvoie FAUX et ton SI passe au calcul, ce qui peut produire un résultat faux ou une erreur en cascade.
Solution : Si tu veux attraper toutes les erreurs sans exception (y compris #N/A), utilise ESTERREUR. Si le #N/A est attendu (valeur non trouvée est un cas normal), reste sur ESTERR. Et pour simplement remplacer n'importe quelle erreur par une valeur par défaut, préfère SIERREUR qui est plus concis.
ESTERR renvoie FAUX sur une cellule contenant le texte "ERREUR"
ESTERR ne détecte que les erreurs Excel officielles (#DIV/0!, #VALEUR!, etc.). Si une cellule contient le texte "ERREUR" ou "Invalide" ou "N/A", ESTERR renvoie FAUX car ce sont des chaînes de caractères normales, pas des erreurs techniques Excel.
Solution : Pour tester du texte spécifique, utilise une comparaison directe : =A1="ERREUR". ESTERR est uniquement conçu pour les codes d'erreur natifs d'Excel, pas pour les textes que tu aurais toi-même saisis.
ESTERR renvoie FAUX sur une cellule vide
Une cellule vide n'est pas une erreur Excel. ESTERR(A1) où A1 est vide renvoie FAUX. Si tu utilises ESTERR pour détecter les cellules non renseignées, les cellules vides passent inaperçues.
Solution : Pour tester les cellules vides, utilise ESTVIDE(A1) ou A1="". Si tu veux à la fois détecter les erreurs ET les cellules vides, combine les deux : =OU(ESTERR(A1);ESTVIDE(A1)).
Formule calculée deux fois, performances dégradées
Dans =SI(ESTERR(formule_complexe);0;formule_complexe), la formule complexe est évaluée deux fois : une fois pour le test ESTERR, une fois pour le résultat. Sur des plages larges ou des formules coûteuses (RECHERCHEX sur de grands tableaux, SOMMEPROD imbriqués), cela peut ralentir sensiblement le fichier.
Solution : Pour les formules coûteuses, utilise SIERREUR qui n'évalue la formule qu'une seule fois : =SIERREUR(formule_complexe;0). Ou stocke le résultat intermédiaire dans une colonne helper.
ESTERR vs ESTERREUR vs ESTNA vs SIERREUR
Garde ESTERR quand le #N/A d'une RECHERCHEV est un "non trouvé" normal que tu ne veux pas confondre avec un vrai bug de calcul : c'est la seule qui détecte toutes les erreurs SAUF celle-là. Passe à ESTERREUR si tu veux tout attraper, #N/A compris, et à ESTNA si au contraire tu ne traques QUE le #N/A.
Si ton seul but est de remplacer une erreur par une valeur de repli, SIERREUR est plus court et n'évalue la formule qu'une fois — réserve ESTERR aux cas où tu testes la condition pour brancher une vraie logique ou compter les erreurs d'une plage.
| Critère | ESTERR | ESTERREUR | ESTNA | SIERREUR |
|---|---|---|---|---|
| Erreurs détectées | Toutes sauf #N/A | Toutes (dont #N/A) | Uniquement #N/A | Toutes (remplacement direct) |
| Résultat | VRAI / FAUX | VRAI / FAUX | VRAI / FAUX | Valeur ou alternative |
| Syntaxe | =ESTERR(valeur) | =ESTERREUR(valeur) | =ESTNA(valeur) | =SIERREUR(valeur;si_erreur) |
| Cas d'usage typique | Calculs avec RECHERCHEV (ignore #N/A) | Détection globale de toute erreur | Gérer spécifiquement les non-trouvés | Remplacer simplement une erreur |
| Calculs multiples | Oui (avec SI) | Oui (avec SI) | Oui (avec SI) | Non (un seul résultat) |
Astuces avancées avec ESTERR
Crée un indicateur d'audit global sur toute la feuille
Pour un audit visuel instantané, ajoute une cellule récapitulative qui compte toutes les erreurs (hors #N/A) dans ta plage de données : =SOMMEPROD(--(ESTERR(A1:Z100))). Affiche-la en vert si le résultat est 0, en rouge sinon via une mise en forme conditionnelle.
Tu as ainsi un indicateur de santé de ton fichier en un coup d'oeil, sans devoir scanner chaque cellule manuellement.
Combine avec INDIRECT pour valider des références dynamiques
Quand tu construis des références de cellules dynamiquement (par exemple, pour naviguer entre onglets), teste si la référence est valide avant de l'utiliser : =SI(ESTERR(INDIRECT(A1));"Référence invalide";INDIRECT(A1)). Si la feuille ou la cellule n'existe pas, INDIRECT produit #REF! et ESTERR le détecte.
C'est particulièrement utile dans les tableaux de bord multi-onglets où des feuilles peuvent être renommées ou supprimées.
Filtre les lignes valides avec FILTER (Excel 365)
Dans Excel 365, tu peux combiner ESTERR avec FILTER pour extraire automatiquement uniquement les lignes dont tous les calculs sont valides : =FILTER(A1:D100;PAS(ESTERR(D1:D100));"Aucune donnée valide"). Cette formule garde uniquement les lignes où la colonne D ne contient pas d'erreur.
Tu peux ainsi créer un tableau de résultats propres à côté de ton tableau source, sans intervention manuelle.
Questions fréquentes sur la fonction ESTERR
Quelle différence entre ESTERR et ESTERREUR ?
ESTERR renvoie VRAI pour toutes les erreurs sauf #N/A. ESTERREUR renvoie VRAI pour toutes les erreurs y compris #N/A.
Utilise ESTERR quand #N/A est attendu (par exemple, une RECHERCHEV qui ne trouve pas toujours la valeur). Utilise ESTERREUR quand tu veux détecter absolument toutes les erreurs sans exception.
Comment utiliser ESTERR dans une validation de données ?
Combine ESTERR avec SI pour afficher un message personnalisé au lieu d'une erreur brute : =SI(ESTERR(formule);"Erreur détectée";résultat). Cela rend tes tableaux plus professionnels et compréhensibles pour des non-techniciens.
Pour une validation sur plusieurs composants, utilise =SI(OU(ESTERR(A1);ESTERR(B1));"Données invalides";A1*B1).
ESTERR détecte-t-il les erreurs de texte ?
Non, ESTERR ne détecte que les erreurs Excel officielles (#DIV/0!, #VALEUR!, etc.). Si une cellule contient du texte normal comme "erreur" ou "N/A", ESTERR renvoie FAUX car ce n'est pas une erreur Excel au sens technique.
Pour tester du texte spécifique, utilise une comparaison directe : =A1="erreur".
Quand préférer SIERREUR à ESTERR ?
Préfère SIERREUR quand tu veux simplement remplacer une erreur par une valeur alternative : =SIERREUR(formule;0) est plus concis et n'évalue la formule qu'une seule fois.
Garde ESTERR quand tu as besoin de tester une condition ET d'exécuter une logique différente selon le résultat, ou quand tu veux compter les erreurs dans une plage avec SOMMEPROD.
Comment compter les erreurs dans une plage avec ESTERR ?
Utilise SOMMEPROD pour compter les erreurs : =SOMMEPROD(--(ESTERR(A1:Z100))). Le -- convertit les VRAI/FAUX en 1/0, puis SOMMEPROD additionne.
Pour compter les erreurs colonne par colonne, tu peux appliquer la même formule sur chaque colonne individuellement, ou créer une ligne récapitulative en bas du tableau.
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
