OVH Cloud OVH Cloud

Fonction Vlookup => quel test écrire sir la recherche = N/A

1 réponse
Avatar
te
Bonjour,

dans une macro, je fais appelle à la fonction recherchev.
Dans les cas où la recherche n'est pas valide, dans Excel il suffit de faire
un test du type (SI(estna()
J'ai voulu faire de la même manière dans la macro mais cela ne marche pas.

Merci d'avance de votre aide,

1 réponse

Avatar
Xav
Bonjour te

quand vlookup ne trouve pas la valeur, il génère un message d'erreur. Il
suffit d'intercepter l'erreur comme dans l'exemple qui suit

Attention: la fonction vlookup recherche aussi un type de variable (ici un
string). Si tu veux chercher une valeur numérique, alors il faut la
convertir (ex: Cint(demande) pour un entier, etc)

Sub test()

Dim resultat As Variant
Dim recherche As Range
Dim demande As String

On Error GoTo Fin 'si une erreur se produit (en l'occurence N#A) aller à
l'étiquette "Fin"

demande = InputBox("Valeur à chercher")
Set recherche = Workbooks("test.xls").Worksheets_("feuil1").Range("A1:b4")
resultat = Application.WorksheetFunction.VLookup_(demande, recherche, 2,
False)

MsgBox resultat

Exit Sub

Fin: 'si erreur alors le résultat devient valeur vide

resultat = ""
MsgBox resultat

End Sub



--
@+

Xav
"te" a écrit dans le message de
news:%

Bonjour,

dans une macro, je fais appelle à la fonction recherchev.
Dans les cas où la recherche n'est pas valide, dans Excel il suffit de
faire

un test du type (SI(estna()
J'ai voulu faire de la même manière dans la macro mais cela ne marche pas.

Merci d'avance de votre aide,