Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String vba excel-查找字符串通配符_String_Excel_Vba_Wildcard - Fatal编程技术网

String vba excel-查找字符串通配符

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

我正在用excel做一个简单的搜索引擎,我想做一些通配符,例如:

我有一个单元格,用户在其中输入搜索词(仅数字),它应该是这样的:“123456”。 然后,我有另一个工作簿,在那里我精确地搜索“123456”。这是我设法做到的

但是,如何生成通配符?例如,我希望用户能够搜索:“123?56”,我会给他搜索结果:“123456”、“123356”、“123556”等

这就是我寻找精确匹配的方式:

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