如何检索调用特定函数的单元格地址

时间:2010-02-20 19:02:06

标签: excel vba

我需要找出调用特定函数的单元格地址。

如果我的函数是MyFunction(arg1,arg2), 我应该能够使用名称“MyFunction”找到单元格地址。

请帮助我找出最有效的方法。

谢谢

2 个答案:

答案 0 :(得分:1)

我问the same question,但措辞不同,所以当我搜索时我找不到这个。

有趣的是,我认为,我得到的答案优于循环答案,原因有两个:

  1. 更快 - 没有循环。只需使用Application.Caller
  2. 如果您的功能是从多个单元格中调用的,则可以使用

答案 1 :(得分:0)

您可以遍历一系列单元格,查找该特定函数:

Dim name as String
Dim searchRange as Range
Dim row as Integer
Dim col as Integer

name = "MyFunction" ''// for example
Set searchRange = Range("A1:P:50") ''// for example

For row = 1 to searchRange.Rows.Count
  For col = 1 to searchRange.Columns.Count
    If Left(searchRange.Cells(row, col).Formula, Len(name)) = name Then
      ''// do something with this cell
    End If
  Next col
Next row