[英]Excel VBA Find function oddity
简而言之
背景
我正在搜索一个命名范围(rngCellsList),它是单列单元格。 在失败的情况下 - 我正在寻找的值是“psiTimBeamLabel1”这个项目在列表中出现了几次。 每次在列表中找到它时,我都会进行一些处理。 我的代码解释如下:
Set rngCell = rngCellsList.Find("psiTimBeamLabel1")
strFoundCellAddr = rngCell.Address
Do
... some processing
Set rngCell = rngCellList.Find("psiTimBeamLabel1",rngCell)
Loop Until rngCell is Nothing or rngCell.Address = strFoundCellAddr
基本上
到目前为止,这一直很好。 还有其他几个例子,列表中有多个,我的逻辑以前有效。
在这种特殊情况下,我在列表中有几个“psiTimBeamLabel1”实例。 但我也有几个“psiTimBeamLabel10”——由于某种原因,在搜索“psiTimBeamLabel1”时,外观是。查找“psiTimBeamLabel10”
知道为什么或如何解决这个问题吗?
谢谢,肯
请改用For..Each
,因为Like
运算符允许您使用负通配符。
For Each rngCell in rngCellsList
If rngCell Like "psiTimBeamLabel1[!0-9]" Then ...
Next rngCell
参考:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.