Modèle

Ce didacticiel montre comment utiliser la fonction Excel SIERREUR pour détecter les erreurs de formule, en les remplaçant par une autre formule, une valeur vide, 0 ou un message personnalisé.

Présentation de la fonction SIERREUR

La fonction SIERREUR Vérifie si une formule génère une erreur. Si FAUX, renvoie le résultat d'origine de la formule. Si TRUE, renvoie une autre valeur spécifiée.

IFERREUR Syntaxe

Pour utiliser la fonction de feuille de calcul Excel IFERREUR, sélectionnez une cellule et tapez :
=SIERREUR(
Remarquez comment les entrées de la formule IFERREUR apparaissent :

Syntaxe et entrées de la fonction IFERROR :

=IFERREUR(VALEUR,valeur_si_erreur)

valeur - Une expression. Exemple : 4/A1

value_if_error - Valeur ou Calcul à effectuer si la saisie précédente entraîne une erreur. Exemple 0 ou "" (vide)

Qu'est-ce que la fonction IFERREUR ?

La fonction SIERREUR appartient à la catégorie des fonctions logiques dans Microsoft Excel, qui comprend ISNA, ISERROR et ISERR. Toutes ces fonctions permettent de détecter et de gérer les erreurs de formule.

IFERROR vous permet d'effectuer un calcul. Si le calcul ne fait pas entraîner une erreur, le résultat du calcul s'affiche. Si le calcul Est-ce que entraîner une erreur, puis un autre calcul est effectué (ou une valeur statique telle que 0, vide ou du texte est affichée).

Quand utiliseriez-vous la fonction SIERREUR ?

  • Lors de la division des nombres pour éviter les erreurs causées par la division par 0
  • Lors de l'exécution de recherches pour éviter les erreurs si la valeur n'est pas trouvée.
  • Lorsque vous souhaitez effectuer un autre calcul si le premier entraîne une erreur (par exemple, rechercher une valeur dans un 2sd table si elle ne se trouve pas dans la première table)

Les erreurs de formule non gérées peuvent provoquer des erreurs dans votre classeur, mais les erreurs visibles rendent également votre feuille de calcul moins attrayante.

Si erreur alors 0

Regardons un exemple de base. Ci-dessous, vous divisez deux nombres. Si vous essayez de diviser par zéro, vous recevrez une erreur :

Au lieu de cela, insérez le calcul dans la fonction SIERREUR et si vous divisez par zéro, un 0 est généré au lieu d'une erreur :

=SIERREUR(A2/B2,0)

Si erreur alors vide

Au lieu de définir les erreurs sur 0, vous pouvez les définir sur « vide » avec des guillemets doubles (« »):

=SIERREUR(A2/B2"")

Nous verrons plus d'utilisations d'IFERROR avec la fonction RECHERCHEV…

IFERREUR avec RECHERCHEV

Les fonctions de recherche telles que RECHERCHEV généreront des erreurs si la valeur de recherche n'est pas trouvée. Comme indiqué ci-dessus, vous pouvez utiliser la fonction SIERREUR pour remplacer les erreurs par des blancs ("") ou des 0 :

Si erreur, faites autre chose

La fonction SIERREUR peut également être utilisée pour effectuer un 2ème calcul si le 1er calcul aboutit à une erreur :

=SIERREUR(RECHERCHEV(A2,Table de recherche1!$A$2:$B$4,2,FAUX), RECHERCHEV(A2,Table de recherche2!$A$2:$B$4,2,FAUX))

Ici, si les données ne sont pas trouvées dans « LookupTable1 », une RECHERCHEV est effectuée sur « LookupTable2 » à la place.

Plus d'exemples de formules IFERROR

IFERROR imbriqué - RECHERCHEV Plusieurs feuilles

Vous pouvez imbriquer un IFERREUR dans un autre IFERREUR pour effectuer 3 calculs distincts. Ici, nous utiliserons deux IFERROR pour effectuer des RECHERCHEV sur 3 feuilles de calcul distinctes :

=SIERREUR(RECHERCHEV(A2,Table de recherche1!$A$2:$B$4,2,FAUX), SIERREUR(RECHERCHEV(A2,Table de recherche2!$A$2:$B$4,2,FAUX), RECHERCHEV(A2,Table de recherche3!$ A$2:$B$4,2,FAUX)))

Index / Match & XLOOKUP

Bien sûr, IFERROR fonctionnera également avec les formules Index / Match et XLOOKUP.

IFERREUR XRECHERCHE

La fonction XLOOKUP est une version avancée de la fonction VLOOKUP.

IFERREUR INDICE / MATCH

Vous pouvez également rechercher des valeurs à l'aide des fonctions INDEX et MATCH dans Excel.

IFERREUR dans les tableaux

Les formules matricielles dans Excel sont utilisées pour effectuer plusieurs calculs via une seule formule. Supposons qu'il y ait trois colonnes d'année, de ventes et de prix moyen. Vous pouvez connaître la quantité totale avec la formule suivante dans la colonne E.

{=SOMME($B$2:$B$4/$C$2:$C$4)}

La formule fonctionne bien jusqu'à ce que la plage du diviseur obtienne une cellule vide ou des zéros. En conséquence, vous voyez à nouveau l'erreur #DIV/0!.

Cette fois, vous pouvez utiliser la fonction SIERREUR comme ceci :

{=SOMME(IFERREUR($B$2:$B$4/$C$2:$C$4,0))}

Notez que la fonction SIERREUR doit être imbriquée dans la fonction SOMME, sinon SIERREUR s'appliquera à la somme totale et non à chaque élément individuel du tableau.

IFNA contre IFERROR

La fonction IFNA fonctionne exactement de la même manière que la fonction IFERROR, sauf que la fonction IFNA ne détecte que les erreurs #N/A. Ceci est extrêmement utile lorsque vous travaillez avec des fonctions de recherche : les erreurs de formule normales seront toujours détectées, mais aucune erreur n'apparaîtra si la valeur de recherche n'est pas trouvée.

=IFNA(VLOOKUP(A2,LookupTable1!$A$2:$B$4,2,FALSE),"Not Found")

Si ERREUR

Si vous utilisez toujours Microsoft Excel 2003 ou une version antérieure, vous pouvez remplacer IFERROR par une combinaison de IF et ISERROR. Voici un bref exemple :

=SI(ESTERREUR(A2/B2),0,A2/B2)

IFERREUR dans Google Sheets

La fonction SIERREUR fonctionne exactement de la même manière dans Google Sheets que dans Excel :

IFERREUR Exemples en VBA

VBA n'a pas de fonction IFERROR intégrée, mais vous pouvez également accéder à la fonction Excel IFERROR à partir de VBA :

Dim n tant que n = Application.WorksheetFunction.IfError(Value, value_if_error)

Application.WorksheetFunction vous donne accès à de nombreuses fonctions Excel (pas toutes) dans VBA.

Généralement, IFERROR est utilisé lors de la lecture des valeurs des cellules. Si une cellule contient une erreur, VBA peut générer un message d'erreur lors de la tentative de traitement de la valeur de la cellule. Essayez ceci avec l'exemple de code ci-dessous (où la cellule B2 contient une erreur) :

Sub IFERROR_VBA() Dim n As Long, m As Long 'IFERROR n = Application.WorksheetFunction.IfError(Range("b2").Value, 0) 'No IFERROR m = Range("b2").Value End Sub

Le code affecte la cellule B2 à une variable. La deuxième affectation de variable génère une erreur car la valeur de la cellule est #N/A, mais la première fonctionne correctement grâce à la fonction SIERREUR.

Vous pouvez également utiliser VBA pour créer une formule contenant la fonction SIERREUR :

Plage("C2").FormuleR1C1 = "=IFERREUR(RC[-2]/RC[-1],0)"

La gestion des erreurs dans VBA est très différente de celle d'Excel. En règle générale, pour gérer les erreurs dans VBA, vous utiliserez la gestion des erreurs VBA. La gestion des erreurs VBA ressemble à ceci :

Sub TestWS() MsgBox DoesWSExist("test") End Sub Function DoesWSExist(wsName As String) As Boolean Dim ws As Worksheet On Error Resume Next Set ws = Sheets(wsName) 'Si l'erreur WS n'existe pas If Err.Number 0 Then DoesWSExist = False Sinon DoesWSExist = True End If On Error GoTo -1 End Function

Remarquez que nous utilisons Si Err.Numéro 0 Alors pour identifier si une erreur s'est produite. C'est un moyen typique de détecter les erreurs dans VBA. Cependant, la fonction SIERREUR a certaines utilisations lors de l'interaction avec des cellules Excel.

Exercices pratiques IFERROR + Exemples

Double-cliquez dans une cellule pour afficher sa formule et la modifier.

à faire:

supprimer les exemples de feuilles de calcul en bas pour l'instant…

à tester/réfléchir :

  • image vs gif en haut
  • attirer l'attention sur des exemples interactifs dans la leçon ?
  • re-étiqueter / re-styler les blocs de code…
  • COT en haut ? les supprimer de ces pages et ajouter manuellement [TOC] ?
    • mettre les liens VBA « excel, googlesheets » en haut et peut-être se débarrasser de la table des matières ? « Fonction SIERREUR disponible dans… »
  • qu'en est-il d'autres images… comme une icône Excel ou des feuilles google ou VBA pour le rendre plus joli
    • oui, je pense voir le brouillon de l'e-mail où le logo Excel est utilisé et l'ajouter quelque part… . et faites-en un en-tête fantaisiste… idem avec les feuilles g et vba !
  • réduisez la taille de la police sur le site !
  • correction CSS… TOC, zone de syntaxe… etc.!

ajouter un bouton de téléchargement pour télécharger la feuille de calcul + demander un e-mail APRÈS le téléchargement…

ou faites quelque chose comme le font les producteurs de modèles… où ils vous demandent de répondre à un sondage

Vous contribuerez au développement du site, partager la page avec vos amis

wave wave wave wave wave