String vba excel-查找字符串通配符
我正在用excel做一个简单的搜索引擎,我想做一些通配符,例如: 我有一个单元格,用户在其中输入搜索词(仅数字),它应该是这样的:“123456”。 然后,我有另一个工作簿,在那里我精确地搜索“123456”。这是我设法做到的 但是,如何生成通配符?例如,我希望用户能够搜索:“123?56”,我会给他搜索结果:“123456”、“123356”、“123556”等 这就是我寻找精确匹配的方式:String vba excel-查找字符串通配符,string,excel,vba,wildcard,String,Excel,Vba,Wildcard,我正在用excel做一个简单的搜索引擎,我想做一些通配符,例如: 我有一个单元格,用户在其中输入搜索词(仅数字),它应该是这样的:“123456”。 然后,我有另一个工作簿,在那里我精确地搜索“123456”。这是我设法做到的 但是,如何生成通配符?例如,我希望用户能够搜索:“123?56”,我会给他搜索结果:“123456”、“123356”、“123556”等 这就是我寻找精确匹配的方式: set rFound = wks.UserRange.Find(strToSearch, LookIn
set rFound = wks.UserRange.Find(strToSearch, LookIn:=xlValues, lookat:=xlwhole, MatchCase:=False)
有什么想法吗
谢谢您可以在循环中使用通配符,也可以与
查找一起使用:
Sub dural2()
MsgBox Range("A1:A10").Find(What:="123*56", After:=Range("A1")).Row
End Sub
或者在类似于
的循环中:
Sub dural()
For Each r In Range("A1:A10")
If r.Value Like "123*56" Then
MsgBox r.Address
End If
Next r
End Sub
你想得到第一个匹配还是可能的匹配?嗨,谢谢你的回答,效果非常完美,不过当我做两个像这样的WildCrad时:“123*5*7”可能也会给我这样的东西:“1233447”-注意,它给出的结果不应该出现在@Gary's