Excel VBA range.find funktioniert

Ich versuche, range.find zu verwenden, um einen Wert in einer Spalte nachzuschlagen und den übereinstimmenden Wert aus der nächsten Spalte zurückzugeben.

Ich habe find () mit dem Makrorecorder aufgenommen, was eine Weile gut funktionierte, aber aus irgendeinem Grund wird mir jetzt ein Fehler angezeigt. Soweit ich das beurteilen kann, habe ich nichts geändert, was diesen Code beeinflussen könnte.

Das habe ich

Public Function look_up_id(id, table)
    Worksheets(table).Activate
    Cells.Find(What:=id, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
        :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
        False, SearchFormat:=False).Activate

    look_up_id = ActiveCell.Offset(0, 1).Value
End Function

Der Fehler, den ich jetzt erhalte, ist:

Objektvariable oder With-Blockvariable nicht gesetzt

Irgendeine Idee, warum das jetzt passiert?

Alle Ressourcen, die ich auf range.find () finden kann, sehen so aus, als ob ich es richtig mache ...

Prost - David

Antworten auf die Frage(2)

Ihre Antwort auf die Frage