将数组公式输出设置为变量vba

时间:2017-05-03 10:42:47

标签: excel-vba excel-formula vba excel

我有一个数组公式,根据多个条件识别行号,但是,我想将此值设置为变量,因为我想将此值用作不同公式的行号。

{=MATCH(J1013&"*"&"55",Workings!K:K&Workings!G:G,0)}

如何将此公式的输出保存为变量?

2 个答案:

答案 0 :(得分:1)

要将中间结果存储在公式计算中,您有两个选择:

1-在名称管理器中添加名称。即

Formulas ---> Name Manager ---> New... 
give it a name, such as myVariable and write the formula in the RefersTo box

这会创建变量,然后您可以在任何公式中引用它,例如:

= myVar*10

2-专用一个单元格来计算公式并参考单元格。

选项-1具有将其保留在幕后的优点。当您想要对整列进行计算时,Option-2更灵活,因此每行的中间值必须不同。在这种情况下,您将中间结果放在所谓的"帮助列"

答案 1 :(得分:1)

您可以使用Evaluate方法评估公式字符串并将其输出到VBA中的变量。例如:

Dim vRow
vRow = activesheet.evaluate("MATCH(J1013&""*""&""55"",Workings!K:K&Workings!G:G,0)")