Formule match sous VBA

Résolu
quentiiin68 -  
 quentiiin68 -
Bonjour,


Je dois utiliser la formule Excel match dans une de mes macros VBA. Dans mon code, la valeur a cherché est une variable, en l'occurence une date (variable d). Voici la ligne de code:

c = Application.WorksheetFunction.Match(d, Sheets("Funds Data").Rows(3), 0)


Ma macro est incapable de faire fonctionner la fonction match. Cependant, si je rentre la date à la main en A1 et transforme le code comme ci-dessous, cela marche très bien:

c = Application.WorksheetFunction.Match(Cells(1,1), Sheets("Funds Data").Rows(3), 0)


Cependant, je suis obligé de créer une variable pour la date, car j'ai parfois besoin de chercher des données rétroactives.

Quelq'un saurait-il m'aider ?

Merci d'avance.
A voir également:

4 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Re,

c = Application.Match(CLng(CDate(d)), Sheets("Funds Data").Rows(3), 0)
1
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

La variable d est declaree comment et comment est_elle ecrite ??
0
quentiiin68
 
d est déclaré en string et est écrite:

d = InputBox("Mois du rapport? Format (dd/mm/yyyy)")
0
quentiiin68
 
Génial, merci beaucoup :)
0