Qu'est-ce que la fonction SIERREUR ?
SIERREUR (IFERROR en anglais) est ta meilleure alliée pour rendre tes fichiers Excel présentables. Quand une formule produit une erreur, #N/A, #DIV/0!, #VALEUR!, #REF!, au lieu d'afficher ce message rouge incompréhensible, SIERREUR affiche ce que tu veux : un message clair, un zéro, ou simplement rien du tout.
Concrètement, c'est elle qui remplace le #N/A d'une RECHERCHEV par « Produit introuvable », qui neutralise le #DIV/0! dans un ratio de rentabilité quand le chiffre d'affaires est nul, ou qui affiche une cellule vide propre quand un nouveau produit n'a pas encore d'historique. Indispensable pour tout fichier partagé avec des clients, des collègues ou ta direction.
Syntaxe
=SIERREUR(valeur; valeur_si_erreur)Clique sur un argument pour aller à son explication.
SIERREUR capture toutes les erreurs sans distinction : #N/A, #DIV/0!, #VALEUR!, #REF!, #NOM?, #NOMBRE! et #VIDE!. Si tu veux capturer uniquement les erreurs #N/A (typiques dans les recherches), préfère SI.NON.DISP, qui laisse les autres erreurs visibles et donc détectables.

Comprendre chaque paramètre de la fonction SIERREUR
valeur
: la formule ou l'expression que tu veux protéger contre les erreursÇa peut être un calcul comme A1/B1, une recherche comme RECHERCHEV(C1; Table; 2; FAUX), ou n'importe quelle autre formule susceptible de produire une erreur. Excel l'évalue en premier et vérifie si elle est en erreur.
Si la formule renvoie un résultat valide (même 0 ou une chaîne vide), SIERREUR affiche ce résultat normalement, seules les vraies erreurs déclenchent le remplacement.
valeur_si_erreur
: la valeur affichée si la formule génère une erreurÇa peut être du texte entre guillemets comme "Non disponible", un nombre comme 0, une cellule vide avec "", ou même une autre formule, y compris une autre SIERREUR pour créer un système de valeurs par défaut en cascade.
Choisis la valeur de remplacement en fonction du contexte : 0 si le résultat entre dans des calculs, "" pour un tableau de reporting épuré, un texte explicite pour un outil partagé avec des non-initiés.

Exemples pratiques pas à pas
Comment gérer une division par zéro avec la fonction SIERREUR
Tu prépares le tableau de marge que la direction attend pour sa revue trimestrielle, département par département. Pour chacun, tu divises le bénéfice par le chiffre d'affaires afin d'obtenir un ratio, mais certains services n'ont encore rien facturé ce trimestre et leur CA à zéro fait surgir des #DIV/0! en plein milieu du tableau. La fonction SIERREUR intercepte ces divisions impossibles et affiche un N/A propre à la place.
- 1Dans une cellule, écris
=SIERREUR(. - 2En 1er argument : écris le calcul à surveiller,
B2/C2, qui divise le bénéfice par le chiffre d'affaires. C'est cette opération que la fonction tente d'abord, et elle n'intervient que si le résultat part en erreur. - 3En 2ᵉ argument : écris la valeur de secours,
"N/A"entre guillemets. Elle ne s'affiche que lorsque le calcul échoue, ici quand un chiffre d'affaires à zéro provoque une division par zéro. - 4Ferme la parenthèse et appuie sur Entrée.
=SIERREUR(B2/C2; "N/A")#DIV/0!, et c'est ce moment précis que N/A vient couvrir à la place du code d'erreur rouge. Ton tableau de marge reste lisible d'un bout à l'autre.Comment sécuriser une RECHERCHEV avec la fonction SIERREUR
Tu prépares un devis et tu dois y reporter le prix de chaque référence commandée à partir de ta base tarifaire. La colonne des codes vient d'être collée depuis un bon de commande, et il s'y est glissé une référence qui n'existe plus au catalogue, ce qui fait ressortir un #N/A en plein devis. En enveloppant ta RECHERCHEV dans la fonction SIERREUR, tu remplaces ce message par un « Produit introuvable » clair, sans casser le reste de la colonne.
- 1Dans une cellule, écris
=SIERREUR(. - 2En 1er argument : écris la recherche à protéger et referme-la,
RECHERCHEV(A2; TarifBase; 2; FAUX). Tant qu'elle retrouve le code dans la base tarifaire, son prix traverse la fonction SIERREUR sans être modifié. - 3En 2ᵉ argument : écris la valeur de secours,
"Produit introuvable". Elle ne s'affiche que si la recherche déclenche#N/A, c'est-à-dire quand le code saisi n'existe pas dans la base. - 4Ferme la parenthèse et appuie sur Entrée.
=SIERREUR(RECHERCHEV(A2; TarifBase; 2; FAUX); "Produit introuvable")PROD-999 est absent de la base, la recherche renvoie donc #N/A, et le texte de secours prend aussitôt le relais. Les codes valides, eux, affichent leur prix sans que la fonction SIERREUR ait à intervenir.Comment renvoyer 0 pour ne pas casser un calcul avec la fonction SIERREUR
Tu montes le récapitulatif des remises à appliquer sur les commandes du mois, et une ligne en bas doit en donner le total. Le taux de remise de certaines commandes n'est pas encore arbitré et reste noté « à valider », si bien que le calcul montant fois taux renvoie #VALEUR! sur ces lignes et empêche ta somme finale de tourner. La fonction SIERREUR transforme ces erreurs en 0, un vrai nombre qui se laisse additionner, pour que le total tienne malgré les données incomplètes.
- 1Dans une cellule, écris
=SIERREUR(. - 2En 1er argument : écris le calcul de la remise,
B2*C2, qui multiplie le montant par le taux. La fonction le tente d'abord et n'agit que si un taux non numérique fait dérailler l'opération. - 3En 2ᵉ argument : saisis la valeur de secours,
0, sans guillemets. Comme c'est un nombre et non du texte, la colonne reste entièrement additionnable, là où un"n.c."aurait cassé la somme du bas. - 4Ferme la parenthèse et appuie sur Entrée.
=SIERREUR(B2*C2; 0)0 plutôt que par du texte, et c'est tout l'intérêt : un 0 reste un nombre. La remise des lignes dont le taux n'est pas encore arbitré compte donc pour zéro, et le total de la colonne « Remise appliquée » continue de s'additionner sans renvoyer #VALEUR!. Un texte de secours, lui, aurait bloqué cette somme.Comment imbriquer la fonction SIERREUR dans un calcul plus large
Tu construis un petit outil de facturation que d'autres personnes rempliront après toi, et tu sais déjà que le taux de TVA n'y sera pas toujours saisi proprement. Chaque ligne calcule le prix TTC à partir du prix HT et du taux, mais dès qu'un taux est illisible, tout le calcul de la ligne renvoie #VALEUR! et l'outil paraît cassé. En glissant la fonction SIERREUR autour du seul taux, tu appliques 0 % par défaut et le calcul continue de produire un prix.
- 1Dans une cellule, écris
=puis clique sur le prix hors taxes,A2, et complète par*(1+. Tu construis d'abord le squelette du calcul, la fonction protectrice viendra se loger à l'intérieur. - 2Écris
SIERREUR(à l'intérieur, puis :- aEn 1er argument : clique sur la cellule du taux de TVA,
B2. C'est ce taux qui risque d'être manquant ou saisi de travers. - bEn 2ᵉ argument : saisis
0pour qu'un taux illisible soit ramené à 0 %. La fonction renvoie alors soit le vrai taux, soit ce zéro, mais jamais une erreur.
- aEn 1er argument : clique sur la cellule du taux de TVA,
- 3Ferme les deux parenthèses et appuie sur Entrée. Comme l'erreur est déjà neutralisée, la multiplication aboutit toujours, et le prix TTC retombe simplement sur le prix hors taxes quand le taux vaut 0.
=A2 * (1 + SIERREUR(B2; 0))B2 contient « erreur » au lieu d'un pourcentage, elle renvoie 0, et le prix TTC reste égal au prix HT (250 €) plutôt que de propager un #VALEUR! dans toute la colonne. Tu gardes un fichier qui tourne, quitte à repérer les taux à corriger séparément.
Les erreurs fréquentes avec la fonction SIERREUR
SIERREUR masque un bug dans ta formule
C'est le piège numéro 1. Si ta formule contient une erreur de logique (mauvaise référence, plage incorrecte), SIERREUR va l'avaler silencieusement. Tes résultats sont faux, mais tu ne le sais pas car aucune erreur n'est visible.
Solution : Teste toujours ta formule seule, sans SIERREUR, jusqu'à ce qu'elle fonctionne correctement. Ajoute SIERREUR en dernier, uniquement pour les cas d'erreur légitimes et prévisibles. Pendant le développement d'un fichier, supprime temporairement les SIERREUR pour voir les vraies erreurs.
Utiliser SIERREUR à la place de SI pour tester une cellule vide
Écrire =SIERREUR(1/A1; "Vide") pour tester si A1 est vide est un contournement incorrect. Si A1 contient du texte ou une vraie erreur autre que la division par zéro, le message "Vide" s'affiche alors que la cellule n'est pas vide, et le vrai problème reste masqué.
Solution : Utilise SI pour les tests logiques : =SI(A1=0; "Vide"; 1/A1) teste explicitement la condition. Réserve SIERREUR aux situations où une erreur technique peut survenir malgré une logique correcte.
SIERREUR capture aussi les erreurs #REF! et les masque
Si tu supprimes accidentellement une colonne référencée dans ta formule, tu obtiens une erreur #REF!. Mais si cette formule est entourée de SIERREUR, l'erreur disparaît silencieusement et tu ne remarques pas le problème.
Solution : Pour les formules de recherche comme RECHERCHEV, utilise SI.NON.DISP à la place de SIERREUR : il ne capture que les erreurs #N/A, et toute erreur #REF! reste visible. Tu préserves ainsi la capacité de détecter les vraies casses dans ton fichier.

SIERREUR vs SI.NON.DISP vs ESTERREUR vs SI
Utilise SI.NON.DISP pour les RECHERCHEV (plus sécurisé car il ne masque pas les #REF!), SIERREUR pour les divisions et calculs généraux, ESTERREUR pour tester si une erreur existe sans la remplacer, et SI pour les conditions métier normales.
| Critère | SIERREUR | SI.NON.DISP | ESTERREUR | SI |
|---|---|---|---|---|
| Capture toutes les erreurs | Oui | Seulement #N/A | Oui (VRAI/FAUX) | Non (conditions logiques) |
| Retourne une valeur de remplacement | Oui | Oui | Non | Selon la condition |
| Idéal pour RECHERCHEV | Fonctionne | Meilleur choix | Non | Non |
| Risque de masquer des bugs | Élevé | Faible | Aucun | Aucun |
| Disponibilité | Excel 2007+ | Excel 2013+ | Toutes versions | Toutes versions |

Astuces avancées avec SIERREUR
Cascade de recherches avec plusieurs SIERREUR imbriquées
Tu peux imbriquer plusieurs SIERREUR pour créer un système de sources en cascade : =SIERREUR(RECHERCHEV(A1; Table1; 2; 0); SIERREUR(RECHERCHEV(A1; Table2; 2; 0); "Non trouvé")) cherche d'abord dans Table1, puis dans Table2 si la première recherche échoue, et affiche "Non trouvé" si les deux échouent.
Parfait pour les fichiers qui agrègent plusieurs sources de données avec des couvertures différentes.
Retourner une formule alternative en cas d'erreur
Au lieu de retourner un texte ou un zéro, tu peux retourner un calcul alternatif : =SIERREUR(A1/B1; A1/C1) divise par B1, et si ça échoue (B1 est zéro ou manquant), divise par C1 à la place.
Utile dans les outils complexes où plusieurs méthodes de calcul existent et où tu veux toujours obtenir un résultat numérique.
Gérer les nouvelles fonctions dynamiques avec SIERREUR
Avec FILTRE, UNIQUE et les autres fonctions dynamiques de Microsoft 365, SIERREUR est indispensable pour gérer les cas où aucune donnée ne correspond au filtre : =SIERREUR(FILTRE(A:A; B:B="Paris"); "Aucun résultat") affiche un message clair au lieu de l'erreur #CALC! difficile à interpréter.
Sans SIERREUR, l'erreur #CALC! bloque tout le champ de déversement et affiche un message peu explicite pour les utilisateurs non techniques.
Questions fréquentes
SIERREUR capture toutes les erreurs (#N/A, #VALEUR!, #REF!, #DIV/0!...), tandis que SI.NON.DISP ne capture que l'erreur #N/A. Pour les formules de recherche comme RECHERCHEV, SI.NON.DISP est plus sécurisé : si tu supprimes accidentellement une colonne et génères une erreur #REF!, elle restera visible avec SI.NON.DISP mais sera masquée avec SIERREUR.
Oui, et c'est son principal risque. SIERREUR ne fait aucune distinction entre une erreur prévisible (code produit absent) et un bug réel (référence cassée, colonne supprimée). Teste toujours tes formules sans SIERREUR d'abord, et ajoute-la seulement quand tu es certain que la formule est correcte et que les erreurs capturées sont intentionnelles.
Oui. =SIERREUR(formule1; SIERREUR(formule2; "défaut")) essaie d'abord la formule1, puis la formule2 si la première échoue, et retourne "défaut" si les deux échouent. C'est pratique pour créer des systèmes de recherche en cascade sur plusieurs sources de données.
Non, l'impact sur les performances est négligeable. SIERREUR teste simplement si la formule génère une erreur avant de décider quelle valeur afficher. Tu peux l'utiliser massivement dans tes fichiers sans craindre de ralentissements perceptibles.
SI teste une condition logique (vrai/faux) que tu définies explicitement, tandis que SIERREUR teste si une formule génère une erreur technique. Par exemple, =SI(A1=0; "Vide"; A1) teste si A1 est égal à zéro, alors que =SIERREUR(1/A1; "Division impossible") capture l'erreur #DIV/0! si A1 est zéro.
Les fonctions dynamiques comme FILTRE, UNIQUE ou TRIER peuvent retourner #CALC! quand aucune donnée ne correspond. =SIERREUR(FILTRE(A:A; B:B="Paris"); "Aucun résultat") remplace ce message d'erreur par un texte compréhensible et empêche le champ de déversement d'afficher une erreur qui bloquerait la lecture du tableau.
Pour aller plus loin
Continue sur ta lancée après la fonction SIERREUR : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.
Tout voir




