Benutzung auf eigene Gefahr ! |
Beschreibung |
Mit diesem API-Dialog ruft man den Verzeichnisauswahl-Dialog unter Windows auf. |
VBA-Quelltext |
''' 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 |
Argumente der Funktion/Prozedur |
|
Verwendete Variable |
|
Rückgabewert |
|
Anwendungsbeispiel(e)... |
In einem Formular befindet sich das Textfeld 'SuchPfad'. Das 'Beim Klicken'-Ereignis der Schaltfläche 'VerzeichnisSuchen' soll den Windows-Dialog 'Datei Öffnen' aufrufen. Dazu ist die Ereignisprozedur zum 'Beim Klicken'-Ereignis so zu gestalten: Dim Pfad As String Pfad = VerzeichnisWählen("Verzeichnis mit Access-Datenbanken") If Pfad <> "" Then Me.SuchPfad = Pfad End Sub |
Hinweis |
Diese Funktion stammt aus einer der zahlreichen Quellen im Web. |