我有一个Excel VBA函数(如下所示),该函数从多个工作表调用,并引用一个本地命名单元格,其值在每个工作表中不同。当我通过点击 F9 来更新我的工作簿时,每次调用该函数都会产生相同的结果,因为对该函数的所有调用都会从工作表中获取本地单元格值,这是我点击<时的焦点。 kbd> F9 键。我现在明白这就是定义“活动”工作表的方式。我想从调用函数的每个工作表中获取本地命名单元格的值。谁能告诉我怎么做?
Function AcquisDate()
Application.Volatile True
[WOULD LIKE TO SET ACTIVE WORKSHEET TO CALLING WORKSHEET HERE
AcquisDate = Range("AcquisDateCell") 'This cell name is local to each worksheet.
End Function
答案 0 :(得分:1)
使用Application.Caller.Parent.Range(...),如下面的示例
Function AcquisDate()
Application.Volatile True
AcquisDate = Application.Caller.Parent.Range("AcquisDateCell")
End Function