Range.Find方法并不总是正常工作

时间:2017-11-14 23:58:06

标签: excel vba

以下是我的程序片段,有时不起作用,我不知道为什么?

With wbSourceFile.Worksheets(1).Cells(1, 2).EntireColumn
    Set rngDataStart = .Find(What:=CLng(strSheetName), _
                             SearchOrder:=xlByColumns, _
                             MatchCase:=True, _
                             LookAt:=xlPart, _
                             After:=.Cells(.Cells.Count))
End With

Range.Find方法应查找wbSourceFile工作簿中的单元格(准确地说:在此工作簿的第一个工作表的B列中),该值等于来自该工作簿的工作表的名称第二个excel文件(此名称先前存储在strSheetName字符串变量中并符合掩码" 1630 ?????"其中'?'代表任何数字)。

一般来说都有效。但问题在于它并不是一直都在工作。尽管在搜索范围内有适当的值,rngDataStart变量设置为“没有”时至少有几次!甚至更奇怪的是:当我进入调试模式并逐步运行该过程时,问题消失(Range.Find方法开始正常工作)。

当然,我必须确保Range.Find方法每次都能正常运行。所以我需要任何可能导致这种情况的建议,或者我应该在哪里寻找这种奇怪行为的原因?

0 个答案:

没有答案