I имеет следующую формулу:лист Функции в Excel VBA с каскадными значениями
dim functionString as String
functionString = "IFERROR(AND(MATCH(" & FirstName.Value & ",C2:C1048576, 0)>0, (MATCH(" & LastName.Value & ",B2:B1048576, 0)>0)), MAX(A2:A1048576)+1)"
То, что я хочу быть в состоянии сделать это вызов из кода VBA, так это будет выглядеть.
application.WorksheetFunction(functionString)
Я знаю, что я могу разместить его на листе в некоторой ячейке, которая никогда не будет использоваться: IE:
Activesheet.range("ZZ1000").formula = "="& functionString
, а затем ссылаться на эту ячейку, не заботясь, будет ли программа непреднамеренно аварии; но есть ли способ сделать такую формулу из VBA напрямую?
В основном я ищу, чтобы увидеть, являются ли FirstName.Value и LastName.Value (которые определены в другом месте кода) вместе, находятся в рабочем листе в столбце B и столбце C. Когда я пишу это, я понял, что я необходимо убедиться, что они оба находятся в одной строке, а не в разных строках.
Попробуйте 'Application.Evaluate (functionString)'? –