VBA Laufzeitfehler 91
30.10.2024 11:44:13
axel_
ich habe einen Fehler, dessen Grund ich nicht finden kann.
Ich habe eine Userform in der ich für eine Rechnung in einer Tabelle das Eingangsdatum und den Eingangsort (Konto/Barkasse) eintragen kann. Damit eine bereits eingetragene Rechnung kein zweites Mal verbucht werden kann, habe ich eine kleine Hürde angelegt. Wenn die Rechnung erstellt wird, wird anstelle von Konto/Barkasse "Eingang auf" in der entsprechenden Zeile eingetragen. Wenn eine Rechnungsnummer dann über mein Userform ausgewählt wird, wird zunächst geprüft, ob dieser Text dort noch zu finden ist oder Konto/Barkasse eingetragen wurde. Wenn die Rechnung noch nicht verbucht wurde, klappt auch alles. Wenn sie bereits verbucht wurde, kommt nach der MsgBox immer der Fehler 91 angezeigt. Dabei markiert er mir die Zeile "If rng.Offset(, 3).Value = "Eingang auf?" Then" als Fehlerquelle. Diese Zeile wurde doch aber schon durchschritten, wenn die MsgBox angezeigt wird?
Private Sub ComboBox_Belegnummer_Change()
Dim rply As String
Dim rng As Range
rply = Format(ComboBox_Belegnummer.Value, "00000")
Set rng = Range("TB_Einnahmen[Rechnung-Nr.]").Find(rply, , xlValues, xlPart)
If rng.Offset(, 3).Value = "Eingang auf?" Then
TextBox_Betrag.Value = Format(rng.Offset(, 2).Value, "€ 0.00")
Else
MsgBox ("Rechnung wurdebereits verbucht")
ComboBox_Belegnummer.Clear
End If
End Sub
Für Tipps wäre ich dankbar.
VG
Anzeige