在Access 2016中,我希望顯示文件打開對話框,允許用戶選擇要導入的CSV文件。然而,相對於正在生成到線路Dim FD as Office.FileDialog
錯誤 - 從the example posted on MSDN'FileDialog'類型未在MS Access中定義
Compile error: User-defined type not defined
在下面的代碼已經被拷貝(和略編輯)。這個例子被列爲相關的Office 2013及更高版本,但在代碼中(相對於變量類型Office.FileDialog)的第一個評論,似乎contridict本 -
Requires reference to Microsoft Office 11.0 Object Library.
當然了Office 2013您是否需要引用MS Office 15對象庫,然後爲未來的版本提供相應的版本庫,例如2016?
但無論如何,在Access 2016中都沒有提及Microsoft Office 11.0 Object Library。然而,對於包括在內的Microsoft Access 16.0對象庫,提及。
我怎樣才能讓文件打開對話框顯示?
Function SelectFile(Optional ByVal title As String = "Please select a file", _
Optional ByVal allowMultiSelect As Boolean = False) As Variant
Dim FD As Office.FileDialog
Dim file As Variant
Set FD = Application.FileDialog(msoFileDialogFilePicker)
With FD
.title = "Please select a file" ' Add the dialog title
.allowMultiSelect = allowMultiSelect ' Set whether or not to allow multiple file selection
.filters.Clear ' Clear any existing filters
.filters.Add "CSV Files", "*.csv" ' Add new filters
'**
' Show the dialog to the user
'*
If .Show = True Then
For Each file In .selectedItems ' Grab the path/name of the selected file
SelectFile = file
Next
Else
SelectFile False
End If
End With
Set FD = Nothing ' Clean up the FD variable
End Function
這裏是我當前所選擇的參考 -
這裏是可用的MS Office referencs(無refernece到的Microsoft Office 16.0對象庫) -
謝謝,這是有效的。我想這只是2016年出現的問題!我明白你的意思是關於多個文件選擇。我想我會刪除該選項並默認設置爲「false」,因爲在這種情況下它不是必需的(我只是嘗試一個轉發計劃)。 –