Neue Datenbank in Verzeichnis speichern

Guten Abend liebe Leser!

Seit einigen Tagen kämpfe ich mit einem Problem.

Ich möchte gerne bei geöffneter Access - Datenbank per Knopfdruck eine neue Datenbank in ein von mir ausgewähltes Verzeichnis speichern. Dieses Verzeichnis ist nicht immer gleich.

Ich habe es zwar geschafft das Dateidialog - Fenster aufzurufen, jedoch kann ich den ausgewählten Ordner dann nicht als Speicherplatz verwenden, da meine Prozedur immer das aktuelle Arbeitsverzeichnis als Speicherpfad verwendet.

Folgenden Code verwende ich derzeit:

‚‘’ Typdeklaration für API-Dialog ‚Verzeichnis auswählen‘

Private Type BrowseInfo
hOwner As Long
pidlRoot As Long
pszDisplayName As String
lpszTitle As String
ulFlags As Long
lpfn As Long
lParam As Long
iImage As Long

End Type

Private Declare Function SHGetPathFromIDList Lib „shell32.dll“ (ByVal pidl As Long, ByVal pszPath As String) As Long

Private Declare Function SHBrowseForFolder Lib „shell32.dll“ (lpBrowseInfo As BrowseInfo) As Long

’ Ermittelt Verzeichnisnamen und zeigt Windows-Dialog an

Public Function VerzeichnisWählen(Optional DialogTitel) As String

Dim StrukturVerzeichnisInfo As BrowseInfo, ListenNr As Long, Pfad As String

With StrukturVerzeichnisInfo
.hOwner = hWndAccessApp
.lpszTitle = IIf(IsMissing(DialogTitel), „Verzeichnispfad auswählen“, CStr(DialogTitel))
.ulFlags = &H1 ’ BIF_RETURNONLYFSDIRS

End With

ListenNr = SHBrowseForFolder(StrukturVerzeichnisInfo)

Pfad = Space$(512)

If SHGetPathFromIDList(ByVal ListenNr, ByVal Pfad) Then VerzeichnisWählen = Left(Pfad, InStr(Pfad, vbNullChar) - 1)

End Function

Hat jemand von euch eine Idee?

Ich bitte um Eure Unterstützung

Guten Abend topo,

Seit einigen Tagen kämpfe ich mit einem Problem.

wer gewinnt?

Hat jemand von euch eine Idee?

bevor ich hier den Code poste, ist es viel einfacher, du lädst dir mal die knowhw30 runter. (man muß das Rad ja nicht immer wieder neu erfinden) http://www.access-home.de/

Dort sind gute und funktionierende Beispiele drin :smile:

Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)