search代码时出错“对象variables或块variables未设置”

我试图写一个子程序,通过一系列的单元格进行search,并返回第一个单元格的列号与指定的值。 这是我迄今为止:

Dim StartCol As Long Dim rngSearch As Range Dim rngFound As Range USedCol = ActiveWorkbook.Sheets("...").UsedRange.Columns.Count Set rngSearch = Range(Cells(6, 2), Cells(6, USedCol)) Set rngFound = rngSearch.Find(What:="Jun", LookIn:=xlValues, LookAt:=xlWhole) StartCol = rngFound.Column 

不幸的是,这给我错误“对象variables或块variables未设置”。 由于我没有使用任何语句,错误必须来自未设置的块variables。 我在其他程序中使用了几乎完全相同的代码行,并且工作得很完美。 我不知道我在这里错过了什么。 我非常感谢任何帮助,谢谢。

另外,当我debugging时,突出显示的行是

 StartCol = rngFound.Column 

让我知道你是否需要任何其他信息。

如果从MSDNsearch失败,就会发生这种情况:

Range.Find方法(Excel)

如果找不到匹配项,此方法返回Nothing。

链接: https : //msdn.microsoft.com/en-us/library/office/ff839746.aspx

你可以testing这个:

 If rngFound Is Nothing Then 'Code to handle not found case Else StartCol = rngFound.Column End If