Das funktioniert nicht: Dim tdf As DAO.TableDef Set tdf = CurrentDb().TableDefs("tbl_Firma" ) Debug.Print tdf.Name Die Fehlermeldung lautet: "Das Objekt ist ungültig, oder es ist nicht mehr festgelegt." Das funktioniert: Dim db As DAO.Database Dim tdf As DAO.TableDef Set db = CurrentDb() Set tdf = db.TableDefs("tbl_Firma" ) Debug.Print tdf.Name Man muss also zuerst einen expliziten Verweis auf die Datenbank setzen. Hingegen funktioniert dasselbe Konstrukt mit einem QueryDef: Dim qdf As DAO.QueryDef Dim rs As DAO.Recordset Set qdf = CurrentDb().QueryDefs("qry_Firma1" ) qdf![FirmaID] = 1 Set rs = qdf.OpenRecordset(dbOpenForwardOnly) With rs If Not .EOF Then Debug.Print ![fi_Ort] End If .Close End With Set rs = Nothing Set qdf = Nothing Access ist manchmal voller Wunder. |