VBA : utilisation de fonctions Excel

Le
PYR
Re-bonsoir

Une autre petite question pour un cas dont je ne m'explique pas l'origine
(ou cause)

Dans mon code VBA, je veux utiliser la commande Excel "index" :
J'ai saisi : CommandButton9.Caption =
Application.WorksheetFunction.Index(Range("Liste").Value, Choix, 1) => Liste
étant un nom de liste dans Excel, Choix étant une variable de mon code
==>> cela fonctionne très bien.

Maintenant je veux utiliser la commande Excel "equiv" :
Je saisi de la même manière : Valeur =
Application.WorksheetFunction.equiv(CommandButton9.Caption,
Range("Liste").Value, 0) => Liste étant la même que pour l'utilisation de la
commande Excel "index" ci-dessus
==>> cela ne fonctionne pas du tout (le mot '.equiv' n'a pas été transformé
en '.Equiv' lors de la compilation signe de la non reconnaissance de la
commande) alors que la syntaxe côté Excel de la formule "equiv" est correcte
(testé).

Auriez-vous une idée pour l'explication et comment pouvoir y remédier ?

Encore merci d'avance.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
isabelle
Le #19756021
bonjour Pyr,

essai comme ça,

Valeur = Application.Match(CommandButton9.Caption, [Liste], 0)

isabelle

PYR a écrit :
Re-bonsoir

Une autre petite question pour un cas dont je ne m'explique pas
l'origine (ou cause)

Dans mon code VBA, je veux utiliser la commande Excel "index" :
J'ai saisi : CommandButton9.Caption =
Application.WorksheetFunction.Index(Range("Liste").Value, Choix, 1) =>
Liste étant un nom de liste dans Excel, Choix étant une variable de
mon code
==>> cela fonctionne très bien.

Maintenant je veux utiliser la commande Excel "equiv" :
Je saisi de la même manière : Valeur =
Application.WorksheetFunction.equiv(CommandButton9.Caption,
Range("Liste").Value, 0) => Liste étant la même que pour l'utilisation
de la commande Excel "index" ci-dessus
==>> cela ne fonctionne pas du tout (le mot '.equiv' n'a pas été
transformé en '.Equiv' lors de la compilation signe de la non
reconnaissance de la commande) alors que la syntaxe côté Excel de la
formule "equiv" est correcte (testé).

Auriez-vous une idée pour l'explication et comment pouvoir y remédier ?

Encore merci d'avance.


PYR
Le #19756191
Encore une fois merci Isabelle car cela fonctionne super.

Avec ton instruction, je suis allé voir la doc en ligne et ai vu la liste
des commandes Excel utilisables via WorksheetFunction dans VBA.
==> Index y est , Equiv non.

Bonne soirée


"isabelle" a écrit dans le message de
news:
bonjour Pyr,

essai comme ça,

Valeur = Application.Match(CommandButton9.Caption, [Liste], 0)

isabelle

PYR a écrit :
Re-bonsoir

Une autre petite question pour un cas dont je ne m'explique pas l'origine
(ou cause)

Dans mon code VBA, je veux utiliser la commande Excel "index" :
J'ai saisi : CommandButton9.Caption =
Application.WorksheetFunction.Index(Range("Liste").Value, Choix, 1) =>
Liste étant un nom de liste dans Excel, Choix étant une variable de mon
code
==>> cela fonctionne très bien.

Maintenant je veux utiliser la commande Excel "equiv" :
Je saisi de la même manière : Valeur =
Application.WorksheetFunction.equiv(CommandButton9.Caption,
Range("Liste").Value, 0) => Liste étant la même que pour l'utilisation de
la commande Excel "index" ci-dessus
==>> cela ne fonctionne pas du tout (le mot '.equiv' n'a pas été
transformé en '.Equiv' lors de la compilation signe de la non
reconnaissance de la commande) alors que la syntaxe côté Excel de la
formule "equiv" est correcte (testé).

Auriez-vous une idée pour l'explication et comment pouvoir y remédier ?

Encore merci d'avance.




isabelle
Le #19756291
bonjour Pyr,

oui, c'est qu'avec vba c'est le nom en anglais qu'il faut utiliser,
Index se traduit par Index et Equiv se traduit par Match

isabelle

PYR a écrit :
Encore une fois merci Isabelle car cela fonctionne super.

Avec ton instruction, je suis allé voir la doc en ligne et ai vu la
liste des commandes Excel utilisables via WorksheetFunction dans VBA.
==> Index y est , Equiv non.

Bonne soirée


"isabelle" a écrit dans le message de
news:
bonjour Pyr,

essai comme ça,

Valeur = Application.Match(CommandButton9.Caption, [Liste], 0)

isabelle

PYR a écrit :
Re-bonsoir

Une autre petite question pour un cas dont je ne m'explique pas
l'origine (ou cause)

Dans mon code VBA, je veux utiliser la commande Excel "index" :
J'ai saisi : CommandButton9.Caption =
Application.WorksheetFunction.Index(Range("Liste").Value, Choix, 1)
=> Liste étant un nom de liste dans Excel, Choix étant une variable
de mon code
==>> cela fonctionne très bien.

Maintenant je veux utiliser la commande Excel "equiv" :
Je saisi de la même manière : Valeur =
Application.WorksheetFunction.equiv(CommandButton9.Caption,
Range("Liste").Value, 0) => Liste étant la même que pour
l'utilisation de la commande Excel "index" ci-dessus
==>> cela ne fonctionne pas du tout (le mot '.equiv' n'a pas été
transformé en '.Equiv' lors de la compilation signe de la non
reconnaissance de la commande) alors que la syntaxe côté Excel de la
formule "equiv" est correcte (testé).

Auriez-vous une idée pour l'explication et comment pouvoir y remédier ?

Encore merci d'avance.







Publicité
Poster une réponse
Anonyme