Datenbank Wert wird nicht übernommen
12.02.2023 17:23:44
Samdra
Ich wollte einen Eintrag aus der Datenbank bearbeiten. Hierzu habe ich mir einen Code erstellt, der leider nicht funktioniert. Es kommt immer wieder die Fehlermeldung 400. Als ich im Editor mit F8 durchgegangen bin, kam bei 'Kundenbearbeiten ein Laufzeitfehler 1004. Sicher stimmt meine Schlaufe Else nicht. Kann mir bitte jemand helfen.
Sub KundenChange_EingabeDB()
'Tabelle einlesen
Dim tbl As ListObject
Set tbl = tb_Datenbank.ListObjects(1)
Dim Zeile As Long
'Kunden anlegen oder bearbeiten?
If tb_Eingabeformular.Shapes.Range(Array("txt_Anlegen", "img_Anlegen")).Visible = True Then
'Kunde anlegen
'Zeile hinzufügen
tbl.ListRows.Add
'Zeile in Variable speichern
Zeile = tbl.DataBodyRange.Rows.Count
'Kunde bearbeiten
Else
Zeile = Range("Tabelle1[Property_ID]").Find(What:=tb_Eingabeformular.Range("C13").Value _
, LookIn:=xlValues, LookAt:=xlWhole).Row - tbl.HeaderRowRange.Row
End If
'Datenbank befüllen
With tb_Eingabeformular
tbl.DataBodyRange(Zeile, 1).Value = .Range("C13").Value
tbl.DataBodyRange(Zeile, 2).Value = .Range("C15").Value
tbl.DataBodyRange(Zeile, 3).Value = .Range("C17").Value
tbl.DataBodyRange(Zeile, 4).Value = .Range("C19").Value
tbl.DataBodyRange(Zeile, 5).Value = .Range("C21").Value
tbl.DataBodyRange(Zeile, 6).Value = .Range("C23").Value
tbl.DataBodyRange(Zeile, 7).Value = .Range("C25").Value
tbl.DataBodyRange(Zeile, 8).Value = .Range("C27").Value
tbl.DataBodyRange(Zeile, 9).Value = .Range("C29").Value
tbl.DataBodyRange(Zeile, 10).Value = .Range("C38").Value
tbl.DataBodyRange(Zeile, 11).Value = .Range("C40").Value
tbl.DataBodyRange(Zeile, 12).Value = .Range("C42").Value
tbl.DataBodyRange(Zeile, 13).Value = .Range("C44").Value
tbl.DataBodyRange(Zeile, 14).Value = .Range("C46").Value
tbl.DataBodyRange(Zeile, 15).Value = .Range("C48").Value
tbl.DataBodyRange(Zeile, 16).Value = .Range("F13").Value
tbl.DataBodyRange(Zeile, 17).Value = .Range("F15").Value
tbl.DataBodyRange(Zeile, 18).Value = .Range("F17").Value
tbl.DataBodyRange(Zeile, 19).Value = .Range("F19").Value
tbl.DataBodyRange(Zeile, 20).Value = .Range("F21").Value
tbl.DataBodyRange(Zeile, 21).Value = .Range("F23").Value
tbl.DataBodyRange(Zeile, 22).Value = .Range("F25").Value
tbl.DataBodyRange(Zeile, 23).Value = .Range("F27").Value
tbl.DataBodyRange(Zeile, 24).Value = .Range("F29").Value
tbl.DataBodyRange(Zeile, 25).Value = .Range("F31").Value
tbl.DataBodyRange(Zeile, 26).Value = .Range("F33").Value
tbl.DataBodyRange(Zeile, 27).Value = .Range("F38").Value
tbl.DataBodyRange(Zeile, 28).Value = .Range("F40").Value
tbl.DataBodyRange(Zeile, 29).Value = .Range("I13").Value
tbl.DataBodyRange(Zeile, 30).Value = .Range("I15").Value
tbl.DataBodyRange(Zeile, 31).Value = .Range("I17").Value
tbl.DataBodyRange(Zeile, 32).Value = .Range("I19").Value
tbl.DataBodyRange(Zeile, 33).Value = .Range("I21").Value
tbl.DataBodyRange(Zeile, 34).Value = .Range("I23").Value
tbl.DataBodyRange(Zeile, 35).Value = .Range("I25").Value
tbl.DataBodyRange(Zeile, 36).Value = .Range("I27").Value
tbl.DataBodyRange(Zeile, 37).Value = .Range("I29").Value
tbl.DataBodyRange(Zeile, 38).Value = .Range("I31").Value
tbl.DataBodyRange(Zeile, 39).Value = .Range("I33").Value
tbl.DataBodyRange(Zeile, 40).Value = .Range("L13").Value
tbl.DataBodyRange(Zeile, 41).Value = .Range("L15").Value
tbl.DataBodyRange(Zeile, 42).Value = .Range("L17").Value
tbl.DataBodyRange(Zeile, 43).Value = .Range("L19").Value
tbl.DataBodyRange(Zeile, 44).Value = .Range("L21").Value
tbl.DataBodyRange(Zeile, 45).Value = .Range("L23").Value
tbl.DataBodyRange(Zeile, 46).Value = .Range("L25").Value
tbl.DataBodyRange(Zeile, 47).Value = .Range("L27").Value
tbl.DataBodyRange(Zeile, 48).Value = .Range("L29").Value
tbl.DataBodyRange(Zeile, 49).Value = .Range("L31").Value
tbl.DataBodyRange(Zeile, 50).Value = .Range("L33").Value
tbl.DataBodyRange(Zeile, 51).Value = .Range("L35").Value
tbl.DataBodyRange(Zeile, 52).Value = Date
End With
'Navigieren zu Tabellenblatt Datenbank
tb_Datenbank.Select
ActiveWindow.ScrollRow = tbl.DataBodyRange(Zeile, 1).Row
tbl.DataBodyRange(Zeile, 1).Select
End Sub