Qu'est-ce que la fonction SI.ERREUR et quelle est sa syntaxe ?
La fonction SI.ERREUR sert à intercepter les erreurs d'une formule pour afficher autre chose à leur place. Plutôt que de laisser un disgracieux #N/A ou #DIV/0! polluer votre tableau, vous demandez à Excel : « si cette formule renvoie une erreur, montre plutôt ceci ». Le résultat reste propre et lisible, même quand une donnée manque ou qu'un calcul échoue.
Sa syntaxe ne compte que deux arguments, ce qui en fait l'une des fonctions les plus faciles à retenir :
=SIERREUR(valeur ; valeur_si_erreur)
Excel évalue d'abord valeur, qui contient généralement votre formule. Si ce calcul réussit, son résultat normal s'affiche. S'il échoue et renvoie une erreur, Excel ignore ce résultat et affiche à la place le second argument, valeur_si_erreur. Ce second argument peut être un texte entre guillemets, un nombre, une chaîne vide ou même une autre formule de secours.
Notez un point qui déroute souvent : le nom de la fonction s'écrit en un seul mot dans la barre de formule, SIERREUR sans point, alors que la documentation française la nomme « SI.ERREUR ». Les deux désignent bien la même chose. La fonction est disponible depuis Excel 2007, donc dans toutes les versions que vous êtes susceptible d'utiliser aujourd'hui.
En France, Excel sépare les arguments d'une fonction par un point-virgule, et non par une virgule. Vous écrivez donc =SIERREUR(A1/B1; 0). Si vous utilisez une version anglophone, la fonction s'appelle IFERROR et les arguments sont séparés par des virgules.
Les types d'erreurs qu'Excel peut renvoyer
Avant de masquer une erreur, il est utile de savoir ce qu'elle signifie. SI.ERREUR intercepte n'importe laquelle des erreurs ci-dessous, mais comprendre leur cause vous évite de cacher un vrai problème sous le tapis. Voici les codes que vous croiserez le plus souvent.
| Erreur | Cause la plus fréquente | Exemple |
|---|---|---|
#N/A | Une valeur recherchée est introuvable | RECHERCHEV sans correspondance |
#DIV/0! | Une division par zéro ou par une cellule vide | =A1/B1 avec B1 vide |
#VALEUR! | Un mauvais type d'argument (texte au lieu d'un nombre) | =A1+B1 avec du texte en A1 |
#REF! | Une référence de cellule a été supprimée | Colonne effacée après la formule |
#NOM? | Un nom de fonction mal orthographié | =RECHERCHV(...) au lieu de RECHERCHEV |
SI.ERREUR capture toutes ces erreurs sans distinction. C'est à la fois sa force et sa limite : pratique pour nettoyer un tableau, mais à manier avec discernement, car masquer un #NOM? ou un #REF! revient à cacher un bug qu'il vaudrait mieux corriger. Nous y reviendrons dans la section consacrée aux pièges.
Masquer les erreurs #N/A d'une RECHERCHEV
C'est de loin l'usage numéro un de SI.ERREUR. Lorsqu'une RECHERCHEV ne trouve pas la valeur cherchée, elle renvoie #N/A. Sur une seule cellule, ce n'est pas dramatique, mais sur une colonne de plusieurs centaines de lignes recopiées, vous vous retrouvez avec un tapis de #N/A qui rend le tableau illisible et fausse les totaux en dessous.
Prenons une RECHERCHEV classique qui va chercher le tarif d'un produit dans une table de référence :
=RECHERCHEV(A2; Tarifs!A:B; 2; FAUX)
Si le produit en A2 n'existe pas dans la table Tarifs, vous obtenez #N/A. Pour afficher un message clair à la place, enveloppez simplement toute la formule dans SI.ERREUR :
=SIERREUR(RECHERCHEV(A2; Tarifs!A:B; 2; FAUX); "Produit inconnu")
Désormais, quand la recherche échoue, la cellule affiche « Produit inconnu » au lieu de #N/A. Vous pouvez bien sûr choisir n'importe quel texte : « À vérifier », « Non trouvé », un tiret, ou même rien du tout. La RECHERCHEV reste exactement la même : SI.ERREUR ne fait que l'habiller pour gérer le cas d'échec.
Pour bien maîtriser ce duo, assurez-vous d'abord d'être à l'aise avec la recherche elle-même. Notre guide complet de la RECHERCHEV détaille chaque argument et les erreurs classiques, avant d'ajouter par-dessus la couche SI.ERREUR.
Masquer les erreurs #DIV/0! d'une division
Le deuxième cas le plus fréquent concerne les divisions. Dès qu'une formule divise par une cellule vide ou égale à zéro, Excel renvoie #DIV/0!. Imaginez un tableau de bord qui calcule un taux de conversion : nombre de ventes divisé par nombre de visites. Tant qu'aucune visite n'est encore enregistrée, le dénominateur vaut zéro et la cellule affiche #DIV/0!.
=A2/B2
Si B2 est vide ou nul, cette formule échoue. SI.ERREUR règle le problème en affichant un 0, un tiret ou un message à la place :
=SIERREUR(A2/B2; 0)
Tant que B2 reste vide, la cellule affiche 0 ; dès qu'une valeur y est saisie, le calcul reprend normalement. Sur un taux que vous préférez voir en pourcentage, vous pouvez tout aussi bien afficher une chaîne vide pour ne rien montrer du tout :
=SIERREUR(A2/B2; "")
C'est particulièrement utile dans les modèles de calcul que vous distribuez à d'autres personnes : plutôt qu'un #DIV/0! anxiogène, l'utilisateur voit une cellule propre tant qu'il n'a pas rempli les données.
Envie de maîtriser vraiment Excel ?
Notre formation Excel vous accompagne des formules de base aux fonctions avancées et aux tableaux croisés dynamiques, en live avec un formateur dédié.
Afficher 0 ou une cellule vide à la place de l'erreur
Le choix de ce que vous mettez dans le second argument n'est jamais anodin, car il influence les calculs en aval. Trois options reviennent constamment, et chacune a ses conséquences.
Afficher un zéro
Mettre 0 comme valeur de secours est pratique quand la cellule alimente ensuite une somme ou une moyenne. Le zéro est neutre dans une addition, donc vos totaux restent justes :
=SIERREUR(RECHERCHEV(A2; Tarifs!A:B; 2; FAUX); 0)
Attention toutefois aux moyennes : un zéro injecté par SI.ERREUR sera compté dans le calcul de la moyenne, ce qui peut la tirer vers le bas. Réfléchissez à ce que vous voulez vraiment mesurer.
Afficher une cellule vide
Pour ne rien afficher, utilisez une chaîne vide, c'est-à-dire deux guillemets sans rien entre eux :
=SIERREUR(RECHERCHEV(A2; Tarifs!A:B; 2; FAUX); "")
Visuellement, la cellule paraît vide. Mais retenez bien qu'elle ne l'est pas vraiment : elle contient une chaîne de texte vide, ce qui n'est pas la même chose qu'une cellule réellement vide. Une fonction comme ESTVIDE la considérera comme remplie, et certains tris ou filtres se comporteront différemment.
Afficher un message explicite
Pour un tableau lu par d'autres personnes, un texte parlant vaut souvent mieux qu'un zéro muet :
=SIERREUR(RECHERCHEV(A2; Tarifs!A:B; 2; FAUX); "À compléter")
L'utilisateur comprend immédiatement qu'une donnée manque, sans se demander si le zéro est une vraie valeur ou une erreur déguisée.
SI.ERREUR, SIERREUR et ESTERREUR : ne pas confondre
Trois fonctions au nom proche sèment régulièrement la confusion. Clarifions une bonne fois pour toutes.
SI.ERREUR et SIERREUR désignent strictement la même fonction. « SI.ERREUR » est le nom documenté en français, « SIERREUR » est ce que vous tapez réellement dans la barre de formule. Il n'y a aucune différence de comportement.
En revanche, ESTERREUR est une fonction distincte et plus ancienne. Elle ne remplace pas l'erreur : elle se contente de répondre VRAI ou FAUX selon que la cellule contient une erreur ou non. Pour obtenir le même résultat que SI.ERREUR, il fallait autrefois l'associer à une fonction SI, en répétant deux fois le calcul :
=SI(ESTERREUR(A2/B2); 0; A2/B2)
Cette ancienne tournure fonctionne toujours, mais elle est plus lourde et oblige Excel à calculer la formule deux fois. Depuis Excel 2007, SI.ERREUR fait la même chose en une seule passe et avec une syntaxe plus courte. Le tableau ci-dessous résume les différences.
| Fonction | Ce qu'elle renvoie | Usage recommandé |
|---|---|---|
SIERREUR / SI.ERREUR | La valeur de secours en cas d'erreur | Méthode moderne, à privilégier |
ESTERREUR | VRAI ou FAUX (teste l'erreur) | Ancien, à combiner avec SI |
SI.NON.DISP | Une valeur de secours, mais pour #N/A uniquement | Quand vous voulez intercepter seulement #N/A |
Une nuance utile : SI.NON.DISP (IFNA en anglais, depuis Excel 2013) ne capture que l'erreur #N/A et laisse passer les autres. C'est plus prudent dans certains cas, car cela évite de masquer involontairement un #DIV/0! ou un #REF! qui signalerait un vrai problème de formule.
Les pièges courants de SI.ERREUR
Cette fonction est si pratique qu'on a vite fait d'en abuser. Voici les erreurs de raisonnement à éviter pour ne pas créer de problèmes à la place de ceux que vous croyez résoudre.
Masquer un vrai bug. SI.ERREUR cache toutes les erreurs, y compris #NOM? (faute de frappe dans une fonction) et #REF! (référence cassée). En enveloppant tout dans SI.ERREUR, vous risquez de ne jamais voir qu'une de vos formules est en réalité défaillante. Avant d'ajouter SI.ERREUR, vérifiez d'abord que votre formule fonctionne quand les données sont présentes.
Trop élargir la portée. Si vous voulez seulement gérer le cas « valeur introuvable » d'une RECHERCHEV, préférez SI.NON.DISP à SI.ERREUR : vous interceptez le #N/A attendu tout en laissant remonter les autres erreurs qui, elles, méritent votre attention.
Oublier l'impact sur les calculs. Remplacer une erreur par une chaîne vide "" peut casser une somme ou un tri en aval, car le texte n'est pas un nombre. Si la cellule alimente un calcul, préférez généralement un 0 à une chaîne vide.
Imbriquer sans relire. On peut chaîner plusieurs SI.ERREUR pour essayer une formule, puis une autre en secours, puis une valeur par défaut. C'est puissant, mais cela devient vite illisible. Documentez ou simplifiez ces formules avant de les diffuser à des collègues.
Ne mettez jamais SI.ERREUR autour d'une formule tant qu'elle n'est pas au point. Faites-la d'abord fonctionner correctement avec de vraies données, vérifiez le résultat, puis seulement ajoutez SI.ERREUR pour habiller les cas d'échec légitimes. Sinon, vous masquez des bugs sans le savoir.
En résumé
La fonction SI.ERREUR est l'un des outils les plus rentables d'Excel pour rendre vos tableaux professionnels et lisibles. Sa syntaxe =SIERREUR(valeur ; valeur_si_erreur) tient en deux arguments : Excel affiche le résultat normal si la formule réussit, et la valeur de secours si elle échoue. Vous savez désormais masquer les #N/A d'une RECHERCHEV, neutraliser les #DIV/0! d'une division, et choisir entre afficher un 0, une cellule vide ou un message clair selon l'impact sur vos calculs. Vous distinguez aussi SI.ERREUR de l'ancienne ESTERREUR, et vous connaissez l'option plus ciblée SI.NON.DISP pour n'intercepter que le #N/A.
Gardez en tête le seul vrai risque : SI.ERREUR ne corrige pas vos formules, il habille les erreurs. Réservez-le aux cas d'échec attendus, jamais pour cacher un bug que vous devriez corriger. Si vous souhaitez gagner en aisance sur ces fonctions et bien d'autres, notre formation Excel vous accompagne des formules de base aux tableaux croisés dynamiques, 100 % à distance et en live, avec un formateur dédié rien que pour vous. Inscription immédiate, démarrage rapide et paiement en 3× sans frais. Pour aller plus loin, parcourez aussi nos guides sur la fonction SI et les fonctions NB.SI et NB.SI.ENS.




