Guten Morgen.
Danke für deine Antwort.
Funktioniert irgendwie nicht. Wenn ich auf das DataGrid klicke, dann zeigt mir meine MsgBox nur den ersten Recordset, egal welche Zeile ich anklicke.
So sieht mein Code aus:
Private Sub DataGridFuellen()
' Recordset wird geschlossen, wenn es noch offen ist
If rstGebEigentuemer.State = adStateOpen Then rstGebEigentuemer.Close
rstGebEigentuemer.Open "SELECT Gebaeude_Id, Strasse, PLZ, Ort FROM Gebaeude" & _
"WHERE R_Eigentuemer_Id=" & EigentuemerId, ADOcn, adOpenStatic
' DataGrid1 füllen
With DataGrid1
Set .DataSource = rstGebEigentuemer
.Columns("Gebaeude_Id").Visible = False
End With
End Sub ' Öffnet frmGebaeude und übergibt Daten an die Combo1 und Textboxen
Public Sub DataGrid1_Click()
strQuelle = "Gebaeude"
MsgBox EigentuemerId
' Recordset wird geschlossen, wenn es noch offen ist
If rstGebEigentuemer.State = adStateOpen Then rstGebEigentuemer.Close
rstGebEigentuemer.Open "SELECT * FROM Eigentuemer WHERE Eigentuemer_Id=" & _
EigentuemerId, ADOcn, adOpenStatic
frmGebaeude.Combo1.Text = rstGebEigentuemer.Fields(3) & " " & _
rstGebEigentuemer.Fields(2)
' Aktuelle Gebäude_Id mittels SQL-Abfrage ermitteln
If rstGebEigentuemer.State = adStateOpen Then rstGebEigentuemer.Close
rstGebEigentuemer.Open "SELECT Gebaeude_Id FROM Gebaeude WHERE" & _
"R_Eigentuemer_Id=" & EigentuemerId, ADOcn, adOpenStatic
Gebaeude_IdDataGrid = rstGebEigentuemer.Fields("Gebaeude_Id")
' Recordset wird geschlossen, wenn es noch offen ist
If rstGebaeude.State = adStateOpen Then rstGebaeude.Close
' Soll bei einer bestimmten Zeile, den entsprechenden Datensatz anzeigen.
rstGebaeude.Open "SELECT * FROM Gebaeude WHERE Gebaeude_Id=" & _
Gebaeude_IdDataGrid, ADOcn, adOpenStatic
With rstGebaeude
frmGebaeude.text1(0).Text = .Fields("ObjektNr")
frmGebaeude.text1(1).Text = .Fields("Name")
frmGebaeude.text1(2).Text = .Fields("ObjektTyp")
frmGebaeude.text1(3).Text = .Fields("Strasse")
frmGebaeude.text1(4).Text = .Fields("PLZ")
frmGebaeude.text1(5).Text = .Fields("Ort")
frmGebaeude.text1(6).Text = .Fields("Hausmeister")
frmGebaeude.text1(7).Text = .Fields("Baujahr")
End With
Unload Me
frmGebaeude.Show
End Sub Weiß leider nicht wie ich es mit ColEdit oder Row machen soll. Vielleicht kannst du mir weiter helfen? Oder kennst noch eine andere Möglichkeit?
Vielen Dank schon mal im voraus.
Gruss
Agnes
------------------------------------
Wenn wir heut gemeinsam starten
und wir alle viel erwarten,
denken wir an jedem Tag daran,
dass man es nur schaffen kann,
wenn wir fest zusammen stehen
und den Weg gemeinsam gehen. |