如何在Excel工作表中获取调用VBA函数的单元格的地址

Nim*_*imo 20 excel vba excel-vba

是否有一个函数来获取调用VBA函数的单元格的地址?

我使用了"Application.ActiveCell.Address",但发现这种方法不是获取调用单元格地址的正确方法.

例如:如果我们有带保存的VBA功能的Excel工作表,重新打开工作表后,上述方法将无法工作.

请帮忙

尼莫

Fio*_*ala 24

您可以使用Application.Caller,但最好将单元格传递给函数.

   With Application.Caller
        CallerRows = .Rows.Count
        CallerCols = .Columns.Count
        CallerAddr = .Address
   End With
Run Code Online (Sandbox Code Playgroud)

请参阅:http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

传递细胞:

 =SomeFunction(A1)
Run Code Online (Sandbox Code Playgroud)

代码所在的位置:

SomeFunction(r)
Run Code Online (Sandbox Code Playgroud)