AW: Datenbank Wert wird nicht übernommen
12.02.2023 20:18:17
Samdra
Das ist der ganze Code. Auf dem ersten Tabellenblatt = Datenbank, auf dem zweiten Tabellenblatt =Eingabeformular
Sub KundenLoeschen()
'Abfrage, ob Kunde wirklich gelöscht werden soll?
Dim Antwort
Antwort = MsgBox("Soll das Asset wirklich gelöscht werden?", vbYesNo + vbQuestion, "Asset wirklich löschen?")
If Antwort = vbYes Then ActiveCell.EntireRow.Delete
End Sub
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
Sub KundenAnlegen_DBEingabe()
'Tabelle einlesen
Dim tbl As ListObject
Set tbl = tb_Datenbank.ListObjects(1)
With tb_Eingabeformular
'Spalten leeren
.Columns("C").ClearContents
.Columns("F").ClearContents
.Columns("I").ClearContents
.Columns("L").ClearContents
'Property-ID einfügen
.Range("C15").Value = tbl.DataBodyRange(tbl.DataBodyRange.Rows.Count, 3)
'Navigieren auf das Eingabeformular
.Shapes.Range(Array("txt_Anlegen", "img_Anlegen")).Visible = True
.Shapes.Range(Array("txt_Bearbeiten", "img_Bearbeiten")).Visible = False
.Select
'Zelle auswählen
.Range("C13").Select
End With
End Sub
Sub KundenBearbeiten_DBEingabe()
'Tabelle einlesen
Dim tbl As ListObject
Set tbl = tb_Datenbank.ListObjects(1)
Dim Zeile As Long
Zeile = ActiveCell.Row - tbl.HeaderRowRange.Row
With tb_Eingabeformular
'Spalten leeren
.Columns("C").ClearContents
.Columns("F").ClearContents
.Columns("I").ClearContents
.Columns("L").ClearContents
'Eingabeformular befüllen
.Range("C13").Value = tbl.DataBodyRange(Zeile, 1).Value
.Range("C15").Value = tbl.DataBodyRange(Zeile, 2).Value
.Range("C17").Value = tbl.DataBodyRange(Zeile, 3).Value
.Range("C19").Value = tbl.DataBodyRange(Zeile, 4).Value
.Range("C21").Value = tbl.DataBodyRange(Zeile, 5).Value
.Range("C23").Value = tbl.DataBodyRange(Zeile, 6).Value
.Range("C25").Value = tbl.DataBodyRange(Zeile, 7).Value
.Range("C27").Value = tbl.DataBodyRange(Zeile, 8).Value
.Range("C29").Value = tbl.DataBodyRange(Zeile, 9).Value
.Range("C38").Value = tbl.DataBodyRange(Zeile, 10).Value
.Range("C40").Value = tbl.DataBodyRange(Zeile, 11).Value
.Range("C42").Value = tbl.DataBodyRange(Zeile, 12).Value
.Range("C44").Value = tbl.DataBodyRange(Zeile, 13).Value
.Range("C46").Value = tbl.DataBodyRange(Zeile, 14).Value
.Range("C48").Value = tbl.DataBodyRange(Zeile, 15).Value
.Range("F13").Value = tbl.DataBodyRange(Zeile, 16).Value
.Range("F15").Value = tbl.DataBodyRange(Zeile, 17).Value
.Range("F17").Value = tbl.DataBodyRange(Zeile, 18).Value
.Range("F19").Value = tbl.DataBodyRange(Zeile, 19).Value
.Range("F21").Value = tbl.DataBodyRange(Zeile, 20).Value
.Range("F23").Value = tbl.DataBodyRange(Zeile, 21).Value
.Range("F25").Value = tbl.DataBodyRange(Zeile, 22).Value
.Range("F27").Value = tbl.DataBodyRange(Zeile, 23).Value
.Range("F29").Value = tbl.DataBodyRange(Zeile, 24).Value
.Range("F31").Value = tbl.DataBodyRange(Zeile, 25).Value
.Range("F33").Value = tbl.DataBodyRange(Zeile, 26).Value
.Range("F38").Value = tbl.DataBodyRange(Zeile, 27).Value
.Range("F40").Value = tbl.DataBodyRange(Zeile, 28).Value
.Range("I13").Value = tbl.DataBodyRange(Zeile, 29).Value
.Range("I15").Value = tbl.DataBodyRange(Zeile, 30).Value
.Range("I17").Value = tbl.DataBodyRange(Zeile, 31).Value
.Range("I19").Value = tbl.DataBodyRange(Zeile, 32).Value
.Range("I21").Value = tbl.DataBodyRange(Zeile, 33).Value
.Range("I23").Value = tbl.DataBodyRange(Zeile, 34).Value
.Range("I25").Value = tbl.DataBodyRange(Zeile, 35).Value
.Range("I27").Value = tbl.DataBodyRange(Zeile, 36).Value
.Range("I29").Value = tbl.DataBodyRange(Zeile, 37).Value
.Range("I31").Value = tbl.DataBodyRange(Zeile, 38).Value
.Range("I33").Value = tbl.DataBodyRange(Zeile, 39).Value
.Range("L13").Value = tbl.DataBodyRange(Zeile, 40).Value
.Range("L15").Value = tbl.DataBodyRange(Zeile, 41).Value
.Range("L17").Value = tbl.DataBodyRange(Zeile, 42).Value
.Range("L19").Value = tbl.DataBodyRange(Zeile, 43).Value
.Range("L21").Value = tbl.DataBodyRange(Zeile, 44).Value
.Range("L23").Value = tbl.DataBodyRange(Zeile, 45).Value
.Range("L25").Value = tbl.DataBodyRange(Zeile, 46).Value
.Range("L27").Value = tbl.DataBodyRange(Zeile, 47).Value
.Range("L29").Value = tbl.DataBodyRange(Zeile, 48).Value
.Range("L31").Value = tbl.DataBodyRange(Zeile, 49).Value
.Range("L33").Value = tbl.DataBodyRange(Zeile, 50).Value
.Range("L35").Value = tbl.DataBodyRange(Zeile, 51).Value
'Navigieren auf das Eingabeformular
.Shapes.Range(Array("txt_Anlegen", "img_Anlegen")).Visible = False
.Shapes.Range(Array("txt_Bearbeiten", "img_Bearbeiten")).Visible = True
.Select
'Zelle auswählen
.Range("C13").Select
End With
End Sub