J'utilise dans une procédure l'équivalent de la fonction RECHERCHEV pour trouver dans la colonne "F4;F515" le NOM défini dans la variable "J1".
NOM = Application.WorksheetFunction.VLookup(J1, Range("F4:F515" ), 1, Faux) L'argument "Faux" est nécessaire car je recherche une correspondance exacte.
Ça marche très bien quand J1 existe dans F4:F515. Par contre si F1 n'existe pas je reçois une erreur 1004 qui bloque tout. Dans ce cas je souhaiterais avoir une réponse m'indiquant que le J1 est absent de ma liste sans bloquer la procédure. Je bloque là-dessus, merci de m'aider.
Sub Tst() Dim sNom As String On Error GoTo Erreurs
sNom = Application.WorksheetFunction.VLookup(Range("J1" ), Range("F4:F515" ), 1, False) Sortie: Exit Sub Erreurs: If Err.Number = 1004 Then MsgBox ("Recherche infructueuse" ) 'Application.StatusBar = "Recherche infructueuse" Resume Sortie End If End Sub
Marsh Posté le 21-05-2012 à 09:53:20
Bonjour,
J'utilise dans une procédure l'équivalent de la fonction RECHERCHEV pour trouver dans la colonne "F4;F515" le NOM défini dans la variable "J1".
NOM = Application.WorksheetFunction.VLookup(J1, Range("F4:F515" ), 1, Faux)
L'argument "Faux" est nécessaire car je recherche une correspondance exacte.
Ça marche très bien quand J1 existe dans F4:F515. Par contre si F1 n'existe pas je reçois une erreur 1004 qui bloque tout. Dans ce cas je souhaiterais
avoir une réponse m'indiquant que le J1 est absent de ma liste sans bloquer la procédure.
Je bloque là-dessus, merci de m'aider.