获取包含特定文本的单元格的引用
我在工作表中有一个包含特定文本的单元格(例如“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键。