我正在尝试使用“*”作为F列中数据的通配符。所有数据的格式和长度与“Pie **”相同,其中每个“*”代表(0-9)
示例:Pie22,Pie71,Pie15,Hot22,Hot41,Hot98
当我尝试下面的代码时,我遇到了CoffeeXX发现并在“hotdog”中替换“Hot”的问题,它变成了“chickendog”。
有没有修复此问题,以便.find看到通配符而不是只选择包含文本的任何内容?
Set PieXX = Columns("F").Find(What:="Pie**", Lookin:=xlvalues)
If not PieXX is nothing then
Columns("F").Replace What:"Pie**", replacement:="Hotdog", _
SearchOrder:=xlbyrows, Matchcase:=False, SearchFormat:=False, Replaceformat:=false
End If
Set CoffeeXX = Columns("F").Find(What:="Hot**", Lookin:=xlvalues)
If not CoffeeXX is nothing then
Columns("F").Replace What:"Hot**", replacement:="Chicken", _
SearchOrder:=xlbyrows, Matchcase:=False, SearchFormat:=False, Replaceformat:=false
End If
答案 0 :(得分:2)
For each cell in Range("F1", Range("F1").End(xlDown))
If cell.value like "pie??" then cell.Replace "pie", "hi", LookAt:=xlPart
Next
这是未经测试的