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

plusieurs critères avec index/match

2 réponses
Avatar
LaurentC
Bonjour Í  tous

Dans une feuille, j'ai un tableau structuré nommé TblOpérations avec
plusieurs colonnes dont Date, NomValeur et Soldée. Les dates sont
classées par ordre croissant.

MsgBox WorksheetFunction.Match(CLng(CDate(LaDate)),
Range("TblOpérations[Date]"), 1)

Me renvoie bien le numéro d'ordre de la date trouvée dans le tableau ou
de la date inférieure, ok.

si je fais
MsgBox
Application.WorksheetFunction.Index(Range("TblOpérations[Soldée]"), _
WorksheetFunction.Match(CLng(CDate(LaDate)),
Range("TblOpérations[Date]"), 1))
Ca me renvoie bien le contenu de la colonne Soldée, ok.

Je souhaite ajouter une seconde condition au Match.

MsgBox WorksheetFunction.Index(Range("TblOpérations[Soldée]"), _
WorksheetFunction.Match(CLng(CDate(LaDate)),
Range("TblOpérations[Date]"), 1), _
WorksheetFunction.Match(LaValeur,
Range("TblOpérations[NomValeur]"), 0))

J'ai une erreur d'exécution 1004, impossible de lire la propriété Index
de la classe WorkSheetFunction.

J'ai tenté d'ajouter Application. devant WorksheetFunction sans plus de
succès.

Comment faire plusieurs test avec index / match ?

Merci pour voter aide
@+Laurent

2 réponses

Avatar
MichD
Bonjour,
Essaie comme ceci :
Dans la ligne de code, tu as l'expression "LaDate" qui est une plage
nommée qui représente le critère "Une Date" comme critère et
l'expression "Valeur" qui est aussi une plage nommée avec "Le nom
"valeur" retenue
comme critère. Ces 2 plages nommées représentent 2 cellules de la
feuille de calcul.
MsgBox
Evaluate("INDEX(TblOpérations[[#All],[Soldée]],MATCH(LaDate&CHAR(187)&Valeur,TblOpérations[[#All],[Date]]&CHAR(187)&TblOpérations[[#All],[NomValeur]],0),1)")
MichD
Avatar
LaurentC
Bonjour MichD
Merci pour ton aide.
MsgBox
Evaluate("INDEX(TblOpérations[[#All],[Soldée]],MATCH(LaDate&CHAR(187)&Valeur,TblOpérations[[#All],[Date]]&CHAR(187)&TblOpérations[[#All],[NomValeur]],0),1)")

J'ai une erreur 13 incompatibiité de type.
Je peux comprendre le fait d'utiliser [#All], je vais gratter de ce
coté, mais j'ai plus de mal avec CHAR(187) ... pourquoi ?
Encore merci
@+Laurent