2011-06-01 69 views
9

我想向MS Access 2007窗體添加一個「瀏覽」按鈕,該窗體將打開標準Windows文件瀏覽器(作爲模式窗口),並允許用戶選擇一個目錄。當用戶確定不在該瀏覽器中時,所選目錄的路徑應寫入Access窗體的文本框中。將文件瀏覽器按鈕添加到MS Access窗體

這樣做的最好方法是什麼?是否有本地訪問方式?

回答

12

創建一個使用Application.FileDialog的函數。 FileDialog是模態。

此功能將返回用戶的文件夾選擇,如果他們做了一個,或者如果他們單擊取消FileDialog上的空字符串。

Public Function FolderSelection() As String 
    Dim objFD As Object 
    Dim strOut As String 

    strOut = vbNullString 
    'msoFileDialogFolderPicker = 4 
    Set objFD = Application.FileDialog(4) 
    If objFD.Show = -1 Then 
     strOut = objFD.SelectedItems(1) 
    End If 
    Set objFD = Nothing 
    FolderSelection = strOut 
End Function 

我認爲你可以使用該功能在您的命令按鈕的單擊事件。

Dim strChoice As String 
strChoice = FolderSelection 
If Len(strChoice) > 0 Then 
    Me.TextBoxName = strChoice 
Else 
    ' what should happen if user cancelled selection? 
End If 

如果你擔心,微軟可能會罷免FileDialog對象有一天,你可以改用Windows API的方法:BrowseFolder Dialog

+0

工作。謝謝! – 2011-06-01 17:21:54

+0

我總是建議使用Windows API,因爲我不相信MS有一天不從Office中刪除FileDialog對象,因爲他們從Office 2007中刪除了FileSearch對象。 – 2011-06-03 03:06:15