pas sûr d'avoir tout compris et sans exemple concret.... regarde tout de même le code ci-dessous si il peut t'aider....
Code:
Dim x As Variant, y As String, z As Range
y = Range("A1").Value 'valeur à chercher
Set z = Sheets("NomFeuille").Range("B1:C25") 'plage où chercher
x = Application.VLookup(y, z, 2, 0) 'pour renvoyer la valeur en colonne 2 de la matrice
sans voir comment sont initialisées les variables, difficile à dire... mets le code complet dans un tout petit fichier représentant bien le problème posé.... car là en l'état....