Formule VLOOKUP IF ISERROR dans Excel et ses alternatives

  • Partage Ça
Michael Brown

Dans ce tutoriel, nous allons voir comment utiliser l'ISERROR avec VLOOKUP dans Excel pour traiter toutes sortes d'erreurs de manière productive.

VLOOKUP est l'une des fonctions Excel les plus déroutantes et les plus problématiques. Quelle que soit la table dans laquelle vous vous trouvez, les erreurs #N/A sont fréquentes, avec #NAME et #VALUE qui apparaissent également de temps en temps. L'utilisation de VLOOKUP avec ISERROR peut vous aider à détecter toutes les erreurs possibles et à les traiter de la manière la plus appropriée à votre situation.

    Pourquoi le VLOOKUP donne-t-il une erreur ?

    L'erreur la plus courante dans les formules VLOOKUP est la suivante #N/A qui se produit lorsqu'une valeur de recherche n'est pas trouvée, et ce pour différentes raisons :

    • La valeur de la consultation n'existe pas dans le tableau de consultation.
    • La valeur de la recherche est mal orthographiée.
    • Il y a des espaces en tête ou en queue de colonne dans la valeur ou la colonne de référence.
    • La colonne de consultation n'est pas la colonne la plus à gauche du tableau.

    De plus, vous pouvez tomber sur un #VALUE ! par exemple lorsque la valeur de la recherche contient plus de 255 caractères. En cas de faute d'orthographe dans le nom de la fonction, une erreur de type #NOM ? apparaît.

    Pour une référence complète, veuillez consulter notre article précédent sur les raisons pour lesquelles Excel VLOOKUP ne fonctionne pas.

    Formule VLOOKUP IF ISERROR pour remplacer les erreurs par un texte personnalisé

    Pour masquer toutes les erreurs possibles qui peuvent être déclenchées par le VLOOKUP, vous pouvez le placer à l'intérieur de la formule IF ISERROR comme ceci :

    IF(ISERROR(VLOOKUP(...)), " texte_si_erreur ", VLOOKUP(...))

    A titre d'exemple, tirons les noms des matières dans lesquelles les étudiants du groupe A ont échoué aux tests :

    =VLOOKUP(A3, $D$3:$E$9, 2, FALSE)

    En conséquence, vous obtenez un tas d'erreurs #N/A, ce qui peut donner l'impression que la formule est corrompue.

    En réalité, ces erreurs indiquent simplement que certaines des valeurs de recherche (A3:A14) ne se trouvent pas dans la liste de recherche (D3:D9). Pour transmettre clairement cette idée, intégrez votre formule VLOOKUP dans la construction IF ISERROR :

    =IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "No", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))

    Cela permettra de détecter les erreurs et de renvoyer votre message texte personnalisé :

    Conseils et notes :

    • Le principal avantage de cette formule est qu'elle fonctionne très bien en toutes les versions des versions 2000 à 365 d'Excel. Dans les versions modernes, des alternatives plus simples et plus compactes sont disponibles.
    • La fonction ISERROR attrape absolument toutes les erreurs Si vous souhaitez afficher un message personnalisé uniquement lorsqu'une valeur de référence n'est pas trouvée (erreur #N/A), utilisez la fonction IF ISNA VLOOKUP (dans toutes les versions) ou IFNA VLOOKUP (dans Excel 2013 et ultérieur).

    ISERROR VLOOKUP pour retourner une cellule vide en cas d'erreur.

    Pour obtenir une cellule vide en cas d'erreur, faites en sorte que votre formule renvoie une chaîne vide ("") au lieu d'un texte personnalisé :

    IF(ISERROR(VLOOKUP(...)), "", VLOOKUP(...))

    Dans notre cas, la formule prend cette forme :

    =IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))

    Le résultat est exactement celui attendu : une cellule vide si le nom de l'élève n'est pas trouvé dans la table de recherche.

    Conseil : de la même manière, vous pouvez remplacer les erreurs VLOOKUP par des zéros, des tirets ou tout autre caractère de votre choix. Il suffit d'utiliser le caractère souhaité à la place d'une chaîne vide.

    IF ISERROR VLOOKUP Formule Oui/Non

    Dans certaines situations, vous pouvez être à la recherche de quelque chose, mais au lieu de trouver les correspondances, vous voulez juste retourner... Oui (ou un autre texte si la valeur de recherche est trouvée) et Non (si la valeur recherchée n'est pas trouvée). Pour ce faire, vous pouvez utiliser cette formule générique :

    IF(ISERROR(VLOOKUP(...)), " texte_si_non_trouvé ", " texte_si_trouvé ")

    Dans notre jeu de données d'exemple, supposons que vous souhaitiez savoir quels étudiants ont échoué à un test et lesquels ne l'ont pas fait. Pour ce faire, utilisez la formule ISERROR VLOOKUP déjà familière pour le test logique IF et dites-lui de sortir "Non" si la valeur n'est pas trouvée (ISERROR VLOOKUP renvoie VRAI), "Oui" si elle est trouvée (ISERROR VLOOKUP renvoie FAUX) :

    =IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "Non", "Oui")

    Alternatives à ISERROR VLOOKUP

    La combinaison IF ISERROR est la technique la plus ancienne et la plus éprouvée pour effectuer un Vlookup sans erreur dans Excel. Au fil du temps, de nouvelles fonctions ont évolué, offrant des moyens plus faciles d'effectuer la même tâche. Nous examinerons ci-dessous d'autres solutions possibles et le meilleur moment pour les appliquer.

    SI ERREUR VLOOKUP

    Disponible dans Excel 2007 et plus

    À partir de la version 2007, Excel dispose d'une fonction spéciale, appelée IFERROR, qui permet de vérifier l'absence d'erreurs dans une formule et de renvoyer votre propre texte (ou d'exécuter une formule alternative) si une erreur est détectée.

    IFERROR(VLOOKUP(...), " texte_si_erreur ")

    La formule réelle est la suivante :

    =IFERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE), "No")

    À première vue, elle ressemble à un analogue plus court de la formule IF ISERROR VLOOKUP, mais il existe une différence essentielle :

    • IFERROR VLOOKUP suppose que vous voulez toujours le résultat de VLOOKUP s'il n'est pas une erreur.
    • IF ISERROR VLOOKUP vous permet de spécifier ce qui doit être retourné en cas d'erreur et ce qui doit être retourné en l'absence d'erreur.

    Pour plus de détails, veuillez consulter la section Utilisation de IFERROR avec VLOOKUP dans Excel.

    SI C'EST UN VLOOKUP

    Fonctionne dans Excel 2000 et plus

    Dans les situations où vous souhaitez ne retenir que les #N/A sans attraper d'autres erreurs, la fonction ISNA est très utile. La syntaxe est la même que celle de IF ISERROR VLOOKUP :

    IF(ISNA(VLOOKUP(...)), " texte_si_erreur ", VLOOKUP(...))

    Mais dans certaines circonstances, cette formule apparemment identique peut donner des résultats différents :

    =IF(ISNA(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "No", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))

    Dans l'image ci-dessous, la cellule A13 contient de nombreux espaces de queue, ce qui fait que la longueur totale de la valeur de consultation dépasse 255 caractères. Par conséquent, la formule déclenche une erreur #VALUE !, attirant votre attention sur cette cellule et vous incitant à en rechercher les raisons. ISERROR VLOOKUP renverrait "Non" dans ce cas, ce qui ne ferait que masquer le problème et donner un résultat totalement erroné.

    Quand l'utiliser :

    Cette formule fonctionne parfaitement lorsque vous souhaitez afficher un texte uniquement lorsqu'une valeur de consultation n'est pas trouvée et que vous ne voulez pas masquer les problèmes sous-jacents de la formule VLOOKUP elle-même, par exemple lorsque le nom de la fonction est mal saisi (#NAME ?) ou que le chemin d'accès complet au classeur de consultation n'est pas spécifié (#VALUE !).

    Pour plus d'informations, veuillez consulter la fonction ISNA dans Excel avec des exemples de formules.

    IFNA VLOOKUP

    Disponible dans Excel 2013 et plus

    Il s'agit d'un remplacement moderne de la combinaison IF ISNA qui vous permet de traiter les erreurs #N/A de manière plus facile.

    IFNA(VLOOKUP(...), " texte_si_erreur ")

    Voici un équivalent abrégé de notre formule IF ISNA VLOOKUP :

    =IFNA(VLOOKUP(A3, $D$3:$E$9, 2, FALSE), "Non")

    Quand l'utiliser :

    Il s'agit d'une solution idéale pour détecter et traiter les erreurs #N/A dans les versions modernes d'Excel (2013 - 365).

    Pour plus de détails, voir la fonction Excel IFNA.

    XLOOKUP

    Prise en charge dans Excel 2021 et Excel 365

    Grâce à sa fonction intégrée "if error", la fonction XLOOKUP est le moyen le plus simple d'effectuer des recherches sans erreur #N/A dans Excel. Il suffit de taper votre texte convivial dans le 4ème argument facultatif nommé si_non_trouvé .

    Par exemple :

    =XLOOKUP(A3, $D$3:$D$9, $E$3:$E$9, "Non")

    Limitation : Il ne capte que les erreurs #N/A, ignorant les autres types.

    Pour plus d'informations, consultez la fonction XLOOKUP dans Excel.

    Comme vous le voyez, Excel offre un grand nombre d'options différentes pour résoudre les erreurs de VLOOKUP. J'espère que ce tutoriel vous a éclairé sur la façon de les utiliser efficacement. Je vous remercie de votre lecture et j'espère vous voir sur notre blog la semaine prochaine !

    Téléchargements disponibles

    ISERROR avec exemples de VLOOKUP (fichier .xlsx)

    Michael Brown est un passionné de technologie passionné par la simplification de processus complexes à l'aide d'outils logiciels. Avec plus d'une décennie d'expérience dans l'industrie de la technologie, il a perfectionné ses compétences dans Microsoft Excel et Outlook, ainsi que dans Google Sheets et Docs. Le blog de Michael est dédié au partage de ses connaissances et de son expertise avec les autres, en fournissant des conseils et des tutoriels faciles à suivre pour améliorer la productivité et l'efficacité. Que vous soyez un professionnel chevronné ou un débutant, le blog de Michael offre des informations précieuses et des conseils pratiques pour tirer le meilleur parti de ces outils logiciels essentiels.