Я пытаюсь выполнить «vlookup» с двумя разными критериями (значения столбца A и G), используя функции «Индекс» и «Сопоставление».
а вот строка, которую я использовал для команды Excel.
=INDEX(Database!A:KG,MATCH(1,(Database!A:A='TempSheet'!A2)*(Database!G:G='TempSheet'!G2),0),10)
Как бы я сделал это с VBA? Он продолжает выдавать мне сообщение об ошибке «Ошибка компиляции: ожидаемый конец оператора».
Selection= _
"=Index(DB.Range("A:KG"), Match(1, (DB.Range("A" = Temp.Range("A" & i).Value)) * (DB.Range("G" = Temp.Range("G" & i).Value)), 0), 10)"
Спасибо
"=INDEX(Database!A:KG,MATCH(1,(Database!A:A='TempSheet'!A2)*(Database!G:G='TempSheet'!G2),0),10)"
? - person David Zemens   schedule 06.01.2015DB
, внутри буквальной строки. - person David Zemens   schedule 06.01.2015Match
, а затемIndex
- отдельно. Вам нужно использовать либоApplication.Worksheetfunction.
, либоEvaluate
, и вы можете проверить синтаксис здесь msdn.microsoft.com/en-us/library/office/ (с примером). - person Rusan Kax   schedule 07.01.2015