12.05.2024, 10:39
Halllo zusammen,
ich versuche gerade, eine Schülerdatenbank mit Abfragen nach der Vorlage einer Kundendatenbank von Kai Weissmann zu erstellen.
Dabei erstelle ich die Anwendung neu, um dabei mehr über VBA zu erfahlen (also keine Änderung des vorgegebenen Codes)
Folgendes Problem: Ich versuche, die Daten einer Schülerdatenbank in ein Eingabeformular zu übernehmen. Code:
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("H").ClearContents
.Columns("L").ClearContents
'Eingabeformular befüllen
.Range("H12").Value = tbl.DataBodyRange(Zeile, 1).Value
.Range("H18").Value = tbl.DataBodyRange(Zeile, 2).Value
.Range("H20").Value = tbl.DataBodyRange(Zeile, 3).Value
.Range("H22").Value = tbl.DataBodyRange(Zeile, 4).Value
.Range("H24").Value = tbl.DataBodyRange(Zeile, 5).Value
.Range("L18").Value = tbl.DataBodyRange(Zeile, 6).Value
.Range("L20").Value = tbl.DataBodyRange(Zeile, 7).Value
.Range("L22").Value = tbl.DataBodyRange(Zeile, 8).Value
.Range("L24").Value = tbl.DataBodyRange(Zeile, 9).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("H18").Select
End With
End Sub
Während bei Kai die richtigen Ergebnisse erscheinen, erscheinen bei mir nur die Überschriften und nicht das Ergebnis der markierten Zeiile.
Ich komm einfach nicht auf den Fehler. Entweder liegt er in der Zeile:
Dim Zeile As Long
Zeile = ActiveCell.Row = tbl.HeaderRowRange.Row
Oder aber, ich hab' irgendwie den Header falsch definiert. Hat jemand eine Idee?
Hier noch die Screenshots der Datenbank und des Eingabeformulars.
ich versuche gerade, eine Schülerdatenbank mit Abfragen nach der Vorlage einer Kundendatenbank von Kai Weissmann zu erstellen.
Dabei erstelle ich die Anwendung neu, um dabei mehr über VBA zu erfahlen (also keine Änderung des vorgegebenen Codes)
Folgendes Problem: Ich versuche, die Daten einer Schülerdatenbank in ein Eingabeformular zu übernehmen. Code:
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("H").ClearContents
.Columns("L").ClearContents
'Eingabeformular befüllen
.Range("H12").Value = tbl.DataBodyRange(Zeile, 1).Value
.Range("H18").Value = tbl.DataBodyRange(Zeile, 2).Value
.Range("H20").Value = tbl.DataBodyRange(Zeile, 3).Value
.Range("H22").Value = tbl.DataBodyRange(Zeile, 4).Value
.Range("H24").Value = tbl.DataBodyRange(Zeile, 5).Value
.Range("L18").Value = tbl.DataBodyRange(Zeile, 6).Value
.Range("L20").Value = tbl.DataBodyRange(Zeile, 7).Value
.Range("L22").Value = tbl.DataBodyRange(Zeile, 8).Value
.Range("L24").Value = tbl.DataBodyRange(Zeile, 9).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("H18").Select
End With
End Sub
Während bei Kai die richtigen Ergebnisse erscheinen, erscheinen bei mir nur die Überschriften und nicht das Ergebnis der markierten Zeiile.
Ich komm einfach nicht auf den Fehler. Entweder liegt er in der Zeile:
Dim Zeile As Long
Zeile = ActiveCell.Row = tbl.HeaderRowRange.Row
Oder aber, ich hab' irgendwie den Header falsch definiert. Hat jemand eine Idee?
Hier noch die Screenshots der Datenbank und des Eingabeformulars.