WorksheetFunction.VLookup

Valentin_Loupe

XLDnaute Occasionnel
Bonjour à tous,

Je voudrais savoir pourquoi je ne peux pas écrire :
Code:
If WorksheetFunction.VLookup(Range("B12:D12"), Sheets("Données").Range("ListeDépartementsZoneTempérature"), 2, False) = "G" then
Range("H33")=12
End If

Pourriez-vous me dire comment je dois écrire cette ligne de commande et si je dois déclarer une variable ?

Je vous remercie par avance,

Bon dimanche,

Valentin
 

job75

XLDnaute Barbatruc
Re : WorksheetFunction.VLookup

Bonjour Valentin,

Le 1er argument de VLookUp doit être une valeur unique comme Range("B12"), pas une matrice comme Range("B12: D12"). Il suffit de faire une petite boucle For Each...Next ou plus simple, d'écrire 3 fois la fonction.

PS : Perso j'écris Application plutôt que WorksheetFunction, c'est plus simple...
 
Dernière édition:

Valentin_Loupe

XLDnaute Occasionnel
Re : WorksheetFunction.VLookup

Bonsoir job65, bonsoir à tous,

Ouép ca fonctionne nickel, merci pour ton aide !
Par contre peux tu me dire la différence entre WorksheetFunction et Application ? Car en fait j'ai essayé les deux, ca fonctionne pareil ! J'avais trouvé le WorksheetFunction dans l'aide VBA en recherchant "Vlookup".

Merci encore,

Valentin
 

Discussions similaires

Réponses
4
Affichages
234

Statistiques des forums

Discussions
312 489
Messages
2 088 852
Membres
103 975
dernier inscrit
denry