ich habe mal wieder ein Problem komme da nicht weiter.
Ich habe eine AccessDatenbank mit mehreren Tabellen.
(hier wichtig eine Tabelle mit Stamminformationen der MA und eine Tabelle in welchem Bereich der Mitarbeiter arbeitet und von wann bis wann)
Nun habe ich folgende Abfrage gemacht:
SQLCommand = "SELECT * FROM tbl_XistStation INNER JOIN tbl_XStamm_MA ON tbl_XistStation.SAP = tbl_XStamm_MA.SAP WHERE tbl_XistStation.Station = '" & Station & "' ORDER BY tbl_XistStation.SAP"
Die Abfrage funktioniert auch.
Aus diesen funsionierten Tabellen möchte ich folgende Werte auslesen:
aus tbl_XStamm_MA:
- SAP, Vorname, Nachname, Geburtsdatum
Diese Werte weise ich dann Zellen in der Zieltabelle zu
.Range("E" & MAEintag1) = DBrecord("tbl_XStamm_MA.SAP")
funktioniert einwandfrei,
es werden alle SAP aufgelistet, die der Station zugeordnet ist..
Möchte ich allerdings die anderen Wunschwerte zuweisen
.Range("C" & MAEintag1) = DBrecord("tbl_XStamm_MA.Nachname")
.Range("D" & MAEintag1) = DBrecord("tbl_XStamm_MA.Vorname")
.Range("F" & MAEintag1) = DBrecord("tbl_XStamm_MA.Geburtsdatum")
Kommt der Hinweis
Ein Objekt, das dem angeforderten Namen oder dem Ordinalverweis entspricht, kann nicht gefunden werden.
Hier ein Überlick der in der Tabelle genutzten Werte
Entweder ich finde meinen Rechtschreibfehler nicht, oder ich mache einen anderen Fehler.
Ich finde da nicht den Quatsch den ich verbrochen habe...
gesamt sieht der Code so aus:
On Error GoTo DBFehler
DBcon.Open
DBcon.BeginTrans
'MA Station einladen
SQLCommand = "SELECT * FROM tbl_XistStation INNER JOIN tbl_XStamm_MA ON tbl_XistStation.SAP = tbl_XStamm_MA.SAP WHERE tbl_XistStation.Station = '" & Station & "' ORDER BY tbl_XistStation.SAP"
Set DBrecord = DBcon.Execute(SQLCommand)
Do While Not DBrecord.EOF
With Sheets("Station")
.Range("A" & MAEintag1) = MACount 'Funktioniert
.Range("C" & MAEintag1) = DBrecord("tbl_XStamm_MA.Nachname")
.Range("D" & MAEintag1) = DBrecord("tbl_XStamm_MA.Vorname")
.Range("E" & MAEintag1) = DBrecord("tbl_XStamm_MA.SAP") 'Funktioniert
.Range("F" & MAEintag1) = DBrecord("tbl_XStamm_MA.Geburtsdatum")
End With
MAEintag1 = MAEintag1 + 1
MACount = MACount + 1
DBrecord.MoveNext
Loop
DBcon.CommitTrans
DBcon.Close
Viele Grüße Marc