Na ja, denn spielen wir doch ein bisschen rum. Andenkbar wäre somit auch, beim Starten einer DB (per Makro „autoexec“ --> Einzige Aktion: AusführenCode, mit einem einzigem Argument: OpenDB() - untenstehendes Modulgerät aufzurufen). Das wäre zum Beispiel absolut DAO-fähig und bezieht sich auf ein simples Datenbankkennwort. Ist hoffentlich ausbaufähig, hier nur unausgereifter Denkansatz! Gleichzeitig hättest Du herrlichen Zugriff auf z.B. RecordSet-Objekte in allen Formularmodulen.
Gruß aus Finnland
Stephan
Option Compare Database
Option Explicit
Public OpenServerDB As DAO.Database
Function OpenDB()
Dim dbName As String
Dim pwd As String
On Error GoTo NoServerFound
'untenstehende Variante geht auch: Rechnername-Freigabename
'dbName = „\workstation4711odersoähnlich\DeineAnzusprechendeDatenbank.mdb“
'Oder Konkret
dbName = „J:\DeineAnzusprechendeDatenbank.mdb“ 'Beispielpfad, indiv. ersetzen bitte
pwd = „;pwd=LassMichDeinPWerraten“ 'Nochmal Beispiel
'Set OpenServerDB = OpenDatabase(„J:\DeineAnzusprechendeDatenbank.mdb“)
Set OpenServerDB = DBEngine.Workspaces(0).OpenDatabase(dbName, False, False, pwd)
DoCmd.OpenForm („Login“) ‚z.B., Passwortübergabe erfolgreich, mach‘ jetzt was
BadStart:
Exit Function
NoServerFound: DoCmd.OpenForm („frm_StartError“) 'Passwortübergabe geht schief, mach was.
Resume BadStart
End Function
Also jedenfalls geht’s bei mir so.