【发布时间】:2016-08-17 23:14:52
【问题描述】:
已解决:问题出在我的公式中,我使用 INDIRECT() 引用单元格,当工作表不同时,该单元格不起作用。查看答案。
我在一张表中有一个公式,我想做的是使用另一张表中的公式,使用 eval 来评估公式。然而,结果并不如预期。似乎公式使用的是工作表 A 上的值,而不是调用者工作表 B。
表格 A 中的公式(参见:Screenshot Sheet A)
=IF(ISERROR(INDEX('1516Activity'!$B:$B,MATCH(INDIRECT(ADDRESS(ROW(),COLUMN(D:D) )),'1516Activity'!$C:$C,0))),"-",IF(LEFT(INDEX('1516Activity'!$F:$F,MATCH(INDIRECT(ADDRESS(ROW(),COLUMN(D:D) )),'1516Activity'!$C:$C,0)))="0","N","Y"))
在工作表 B 中的用法(请参阅:Screenshot Sheet B)
=Eval('CODE-VARS'!$G$5)
VBA:
Function Eval(Ref As String)
Application.Volatile
Eval = Application.ThisCell.Parent.Evaluate(Ref)
End Function
【问题讨论】: