Hoi Superseb,
Je hebt gelijk, mijn laatste tip was waardeloos. Maar je kan wel de waarde van het path in een textfiletje zetten en dat dan inlezen via een procedure.
Voor de laatste mogelijkheid heb ik diep in mijn archieven moeten gaan zoeken. Het is een beetje eleganter en heb ik vroeger gebruikt met Access97. Je moet een module aanmaken en volgende text er in zetten:
'******************************************
Option Compare Database 'Use database order for string comparisons
Function GetCurrentDBName() As String
Dim MyWorkspace As Workspace
Dim MyDatabase As Database
Set MyWorkspace = DBEngine.Workspaces(0)
Set MyDatabase = MyWorkspace.Databases(0)
GetCurrentDBName = MyDatabase.Name
End Function
Function getcurrentDBpath() As String
Dim Temp As String
Dim SSF As Integer 'Start of Filename
Temp = GetCurrentDBName()
SSF = GetStartOfFilename(Temp)
getcurrentDBpath = Left(Temp, SSF - 1)
End Function
Function GetStartOfFilename(FN As String) As Integer
'Returns the start of the filename in the string or 0 is no filename
Dim i As Integer
If Len(FN) = 0 Then
GetStartOfFilename = 0
ElseIf Right$(FN, 1) = "\" Or Right$(FN, 1) = ":" Then
GetStartOfFilename = 0
Else
GetStartOfFilename = 1
'The last \ or : in the string is the end of the path
For i = Len(FN) - 1 To 1 Step -1
If Mid$(FN, i, 1) = "\" Or Mid$(FN, i, 1) = ":" Then
GetStartOfFilename = i + 1
Exit For
End If
Next i
End If
End Function
'******************************************
Deze module zetten wij altijd in elke database die wij aanmaakten, vroeg of laat kwam dat toch van pas. De functie getcurrentDBpath geeft u de waarde van het path waar dat de database staat. Nu kun je die verplaatsen zonder problemen.
Succes,
Guido