我在Excel 2003中遇到一个奇怪的问题,在搜索隐藏的单元格中的值和过滤范围的一部分时,Range.Find方法失败.
要清楚,这是有问题的方法调用:
Cells.Find(SearchString, LookIn:=xlFormulas, LookAt:=xlWhole)
Run Code Online (Sandbox Code Playgroud)
各种Excel网站和论坛上的许多消息来源都声称指定"LookIn:= xlFormulas"将强制Range.Find在隐藏单元格内进行搜索.虽然没有意义,但如果SearchString位于仅隐藏的单元格中,那似乎也是如此.如果单元格既隐藏又是过滤范围的一部分,则会失败.
请注意,过滤器是否隐藏了单元格并不重要.例如,您可以搜索过滤范围的标题(过滤器本身永远不会隐藏),但如果该标题恰好位于您隐藏的列中,则Range.Find将失败.
是否有任何Excel方法可以可靠地搜索单元格而不考虑它们是否恰好被隐藏和/或过滤器的一部分?