Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Syntaxe Application.worksheetfunction.vlookup

4 réponses
Avatar
Lycaon
Bonjour =E0 tous,

Je souhaite utiliser la fonction vlookup dans une macro.
Elle doit cherche une valeur situ=E9e dans un tableau VBA (nomm=E9
ZoneOct) dans un autre (nomm=E9 ZoneSept) et renvoyer alors la valeur
situ=E9e dans la troisi=E8me colonne.

Voil=E0 ce que j'ai =E9crit :

For i =3D 1 To UBound(ZoneOct)
Arr(i) =3D Application.WorksheetFunction.VLookup(ZoneOct(i, 1), ZoneSept,
3, False)
Next

Mais la syntaxe n'est pas correcte. Comment faire ?

Merci pour votre aide.

Lycaon

4 réponses

Avatar
Paul V
Hello,

Deux questions:

1. C'est quoi Zonesept?

2. As-tu un message d'erreur. Si oui, lequel.

Un commentaire: V ou HLOOKUP sont des fonctions délicates et ne supportent
aucune inperfection. Il est souvent préférable d'utiliser Index et Equiv.

A+

Paul V

"Lycaon" a écrit dans le message de news:

Bonjour à tous,

Je souhaite utiliser la fonction vlookup dans une macro.
Elle doit cherche une valeur située dans un tableau VBA (nommé
ZoneOct) dans un autre (nommé ZoneSept) et renvoyer alors la valeur
située dans la troisième colonne.


For i = 1 To UBound(ZoneOct)
Arr(i) = Application.WorksheetFunction.VLookup(ZoneOct(i, 1), ZoneSept,
3, False)
Next

Mais la syntaxe n'est pas correcte. Comment faire ?

Merci pour votre aide.

Lycaon
Avatar
Lycaon
Salut,

ZoneSept =
Workbooks("DEAI-Studies&Projects-2006-09-Final.xls").Worksheets("Projects") .Range("A7",
"T614")
ça me renvoie un Array de 608 lignes sur 20 colonnes.
ZoneOct =
Workbooks("DEAI-Studies&Projects-2006-10-Final-Dif.xls").Worksheets(1).Rang e("A46",
"T651")
ça me renvoie un Array de 606 lignes sur 20 colonnes.

J'obtiens un message d'erreur passe partout : 13 type mismatch

Je vais regarder tes fonctions.

Merci pour ta réponse et à bientôt

Lycaon

On 27 nov, 10:41, "Paul V" wrote:
Hello,

Deux questions:

1. C'est quoi Zonesept?

2. As-tu un message d'erreur. Si oui, lequel.

Un commentaire: V ou HLOOKUP sont des fonctions délicates et ne support ent
aucune inperfection. Il est souvent préférable d'utiliser Index et Eq uiv.

A+

Paul V



Avatar
Paul V
J'ai l'esprit lent avec les neurones en compote et donc je ne comprend pas
très vite. ;-) (NSP*)

Zonesept et ZoneOct sont elles des array ou des plages de feuilles de
classeurs XL?

L'erreur semble indiquer un problème de variable.

Comment as-tu initialisé Arr ?

A+

Paul V

* No scuds Please



"Lycaon" a écrit dans le message de news:

Salut,

ZoneSept Workbooks("DEAI-Studies&Projects-2006-09-Final.xls").Worksheets("Projects").Range("A7",
"T614")
ça me renvoie un Array de 608 lignes sur 20 colonnes.
ZoneOct Workbooks("DEAI-Studies&Projects-2006-10-Final-Dif.xls").Worksheets(1).Range("A46",
"T651")
ça me renvoie un Array de 606 lignes sur 20 colonnes.

J'obtiens un message d'erreur passe partout : 13 type mismatch

Je vais regarder tes fonctions.

Merci pour ta réponse et à bientôt

Lycaon

On 27 nov, 10:41, "Paul V" wrote:
Hello,

Deux questions:

1. C'est quoi Zonesept?

2. As-tu un message d'erreur. Si oui, lequel.

Un commentaire: V ou HLOOKUP sont des fonctions délicates et ne supportent
aucune inperfection. Il est souvent préférable d'utiliser Index et Equiv.

A+

Paul V



Avatar
Lycaon
ZoneSept et ZoneOct sont des plages de feuilles de classeur XL que
j'essaye de transformer en array pour améliorer mes temps de calcul.
Pour initialiser Arr j'ai fait un dim Arr tout simple puis ensuite un

redim arr(ubound(zoneoct))

++

Lycaon

On 27 nov, 11:09, "Paul V" wrote:
J'ai l'esprit lent avec les neurones en compote et donc je ne comprend p as
très vite. ;-) (NSP*)

Zonesept et ZoneOct sont elles des array ou des plages de feuilles de
classeurs XL?

L'erreur semble indiquer un problème de variable.

Comment as-tu initialisé Arr ?

A+

Paul V

* No scuds Please

"Lycaon" a écrit dans le message de news:

Salut,

ZoneSept =
Workbooks("DEAI-Studies&Projects-2006-09-Final.xls").Worksheets("Projects ")­.Range("A7",
"T614")
ça me renvoie un Array de 608 lignes sur 20 colonnes.
ZoneOct =
Workbooks("DEAI-Studies&Projects-2006-10-Final-Dif.xls").Worksheets(1).Ra ng­e("A46",
"T651")
ça me renvoie un Array de 606 lignes sur 20 colonnes.

J'obtiens un message d'erreur passe partout : 13 type mismatch

Je vais regarder tes fonctions.

Merci pour ta réponse et à bientôt

Lycaon

On 27 nov, 10:41, "Paul V" wrote:



Hello,

Deux questions:

1. C'est quoi Zonesept?

2. As-tu un message d'erreur. Si oui, lequel.

Un commentaire: V ou HLOOKUP sont des fonctions délicates et ne suppo rtent
aucune inperfection. Il est souvent préférable d'utiliser Index et Equiv.

A+

Paul V- Masquer le texte des messages précédents -- Afficher le tex te des messages précédents -