Excel-VBA Range.Find方法错误处理

时间:2018-05-17 17:51:32

标签: vba excel-vba excel

我正在使用range.find方法在第一行中找到具有特定值的单元格。当匹配时,代码工作正常。当没有匹配时,代码会抛出错误,如下面的屏幕截图所示。

我们需要对此方法进行错误处理是否正常?我以为它只会返回Null或Nothing。谢谢你的帮助!

enter image description here

1 个答案:

答案 0 :(得分:1)

使用它。如果您直接想要返回空范围的列号,则会显示错误。

Sub findtest() 
dim c as long
dim rng as range
   Set rng = ActiveSheet.Rows("1:1").Find(What:="John Smith", _
        After:=ActiveCell, LookIn:=xlValues, _
        LookAt:=xlPart, SearchOrder:=xlByColumns, _
        SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False)

    If Not rng Is Nothing Then c = rng.column : Debug.Print c
end sub