'Range.Find' 测试什么都不说 "Object Required"

'Range.Find' test for nothing says "Object Required"

如果我 运行 这段代码,为什么会出现需要对象的错误?:

    Dim mitarbeiterStatus
    Dim mitarbeiterCell As Variant
    Set mitarbeiterCell = Nothing
    Dim rowsinWorkflow As Integer
    rowsinWorkflow = Worksheets("worksheet1").Range("A1").End(xlDown).Row

    With Worksheets("worksheet1").Range("B2:B" & rowsinWorkflow)
        Dim firstAddress
        mitarbeiterCell = .Find(displayName, LookIn:=xlValues)
        If Not mitarbeiterCell Is Nothing Then 'ERROR HERE
            firstAddress = mitarbeiterCell.Address
            Do
            '.....
            Set mitarbeiterCell = .FindNext(displayName)
            Loop While Not c Is Nothing And mitarbeiterCell.Address <> firstAddress

顺便说一句,我试着像这里那样做:https://msdn.microsoft.com/de-de/library/office/ff839746.aspx

With Worksheets(1).Range("a1:a500") 
Set c = .Find(2, lookin:=xlValues) 
If Not c Is Nothing Then 
    firstAddress = c.Address 
    Do 
        c.Value = 5 
        Set c = .FindNext(c) 
    Loop While Not c Is Nothing And c.Address <> firstAddress 
End If 
End With

更改此行:

mitarbeiterCell = .Find(displayName, LookIn:=xlValues)

为此:

Set mitarbeiterCell = .Find(displayName, LookIn:=xlValues)