我有一个数组公式将基于多个条件来标识行数,但是,我想将该值设置为变量,因为我想将其用作行数不同的公式。将数组公式输出设置为变量vba
{=MATCH(J1013&"*"&"55",Workings!K:K&Workings!G:G,0)}
任何想法如何将此公式的输出保存为变量?
我有一个数组公式将基于多个条件来标识行数,但是,我想将该值设置为变量,因为我想将其用作行数不同的公式。将数组公式输出设置为变量vba
{=MATCH(J1013&"*"&"55",Workings!K:K&Workings!G:G,0)}
任何想法如何将此公式的输出保存为变量?
您可以使用Evaluate
方法评估公式字符串并将其输出到VBA中的变量。例如:
Dim vRow
vRow = activesheet.evaluate("MATCH(J1013&""*""&""55"",Workings!K:K&Workings!G:G,0)")
要存储在公式计算的中间结果,你有两个选择:
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更加灵活,因此每行的中间值必须不同。在这种情况下,你把你的中间结果放在所谓的“助手列”。
我选择将输出放入单元格中,然后将其保存到变量中。工作,可惜没有更好的方法来做到这一点。 – Lowpar
@Lowpar我明白,我们都希望Excel公式语言能够在同一个公式中引用中间结果。那么,它不,但它仍然是一个很好的工具:) –
不错,我会试试这个! – Lowpar