获取包含特定文本的单元格的引用

我在工作表中有一个包含特定文本的单元格(例如“hello”),我想知道它是哪个单元格。 我想知道这个单元格的参考(例如“B52”)。

我尝试了一些与INDEX或MATCH公式的东西,但我很困惑我该怎么做这种查询。

如果有人能提供一些build议,这将是非常好的。

提前致谢 !

试试这个小macros:

Sub WhereIs() Dim r As Range For Each r In ActiveSheet.UsedRange If InStr(1, r.Text, "hello") > 0 Then MsgBox r.Address Exit Sub End If Next r End Sub 

编辑#1

用户定义函数(UDF)格式的方法如下:

 Public Function WhereIs(rIn As Range, sIn As String) As String WhereIs = "" Dim r As Range For Each r In rIn If InStr(1, r.Text, sIn) > 0 Then WhereIs = r.Address(0, 0) Exit Function End If Next r End Function 

这里是一个在工作表中使用的例子:

演示

编辑#2

可以在没有VBA的情况下查找两个维度的值
说我们有像这样的数据:

下一个

K1中input:
你好

K2中input数组公式

 =MIN(IF($A$1:$H$14=K1,COLUMN($A$1:$H$14)-COLUMN($A$1)+1)) 

K3中input数组公式

 =MIN(IF($A$1:$H$14=K1,ROW($A$1:$H$14)-ROW($A$1)+1)) 

K4中input:

 =ADDRESS(K3,K2) 

K2给出列, K3给出行, K4给出单元格的地址($ E $ 11)

数组公式必须使用Ctrl + Shift + Enterinput,而不仅仅是Enter键。