Comment utiliser IfNa dans VBA (avec exemple)



Vous pouvez utiliser la méthode IfNa dans VBA pour renvoyer une valeur spécifique si une formule génère une erreur #N/A .

Voici une façon courante d’utiliser IfNa dans la pratique :

Sub UseVLOOKUP()
    With Application
    Range("F2").Value = .IfNa(.Vlookup(Range("E2"), Range("A2:C11"),3,False), "No Value Found")
    End With
End Sub

Cette macro particulière tente d’utiliser la fonction RECHERCHEV pour rechercher la valeur dans la cellule E2 dans la plage A2:C11 .

Si la valeur dans la cellule E2 est introuvable, la formule donnera alors #N/A .

Cependant, nous pouvons utiliser la méthode IfNa pour renvoyer « No Value Found » au lieu de #N/A .

L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.

Exemple : Comment utiliser IfNa dans VBA

Supposons que nous ayons l’ensemble de données suivant dans Excel qui contient des informations sur divers joueurs de basket-ball :

Supposons que nous souhaitions rechercher le nom de l’équipe « Kings » dans l’ensemble de données et renvoyer la valeur correspondante dans la colonne des passes décisives.

Nous pouvons créer la macro suivante pour ce faire :

Sub UseVLOOKUP()
    With Application
    Range("F2").Value = .IfNa(.Vlookup(Range("E2"), Range("A2:C11"),3,False), "No Value Found")
    End With
End Sub

Lorsque nous exécutons cette macro, nous recevons le résultat suivant :

La macro renvoie correctement une valeur de 3 passes décisives pour les Kings.

Supposons maintenant que nous modifions le nom de l’équipe dans la cellule E2 en « Grizzlies », qui n’existe pas dans l’ensemble de données.

Lorsque nous exécuterons à nouveau cette macro, elle renverra « Aucune valeur trouvée » car c’est la valeur que nous avons spécifiée qui doit être renvoyée si la fonction RECHERCHEV entraîne une erreur #N/A.

La macro renvoie « Aucune valeur trouvée » puisque les Grizzlies n’existent pas dans la colonne équipe.

Remarque : Vous pouvez trouver la documentation complète de la méthode VBA IfNa ici .

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :

VBA : comment utiliser la correspondance d’index
VBA : Comment trier une feuille sur plusieurs colonnes
VBA : comment vérifier si une chaîne contient une autre chaîne

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *