是否有函数来获取调用VBA函数的单元格的地址?如何在Excel表格中获取调用VBA函数的单元格的地址
我用“Application.ActiveCell.Address”,但发现这种方法不是获取调用单元地址的正确方法。
例如:如果我们具有保存VBA函数的Excel工作表,一旦您重新打开工作表,上述方法将不起作用。
请帮助
尼莫
是否有函数来获取调用VBA函数的单元格的地址?如何在Excel表格中获取调用VBA函数的单元格的地址
我用“Application.ActiveCell.Address”,但发现这种方法不是获取调用单元地址的正确方法。
例如:如果我们具有保存VBA函数的Excel工作表,一旦您重新打开工作表,上述方法将不起作用。
请帮助
尼莫
您可以使用Application.Caller,但你可能会是最好的细胞传递给函数。
With Application.Caller
CallerRows = .Rows.Count
CallerCols = .Columns.Count
CallerAddr = .Address
End With
参见:http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx
要通过细胞:
=SomeFunction(A1)
当代码有:
SomeFunction(r)
刚发现我提出了同样的问题:[如何找出从哪个单元格调用VBA函数](http://stackoverflow.com/questions/5559279/excel-cell-from-which-a-function-is-called) –
@nimo,是功能的UDF?你可以给一些代码作为你想要做什么的例子吗? –
'ThisCell' https://msdn.microsoft.com/zh-cn/library/office/ff834969.aspx – Slai