VBA查找问题 - 找不到任何错误

时间:2017-07-14 20:47:27

标签: excel-vba vba excel

我敢打赌,这很简单。即使我已经研究了很多并尝试了几种方法,我仍然会得到运行时错误424。

代码是查找用户输入的数字。如果数字在数据集中,我想做一件事,但如果数字不在数据集中,我想做其他事情。

代码如下。

Sub Test()

Dim Material As String
Dim cell As Range

    Material = InputBox("Enter BIS # for material type")

    Range("A7:a40").Select

       Set cell = Selection.Find(What:=Material, After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _, SearchFormat:=False).Activate
    If cell Is Nothing Then
        MsgBox "Boo"

    Else
        MsgBox "Great"

End If

End Sub

1 个答案:

答案 0 :(得分:2)

如果from scipy.cluster.hierarchy import dendrogram dendrogram(Z) 没有返回任何内容,则无法调用Activate,因此会导致错误。此外,Find是子,而不是函数,因此您无法将Activate设置为其返回值。

注意:无需cell Select Range("A7:A40")功能即可使用Find。您可以使用Range

完全限定Find函数正在搜索特定值的Range("A7:A40").Find...

请改为尝试:

Sub Test()
    Dim Material As String
    Dim cell As Range

    Material = InputBox("Enter BIS # for material type")     
    Set cell = Range("A7:A40").Find(What:=Material, LookIn:=xlValues, LookAt:=xlWhole, _
                        SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False)             
    If cell Is Nothing Then ' <-- this lines checks if Find failed to find a match 
        MsgBox "Boo"
    Else
        cell.Activate
        MsgBox "Great"
    End If
End Sub