2

我正在尝试更新 VBA 模块以使用System.Windows.Forms.FolderBrowserDialog该类。我声明我的对象如下:

Dim MyFolderBrowser As New System.Windows.Forms.FolderBrowserDialog

运行这个给了我错误User-defined type not defined。我认为编译器不知道该类,所以我尝试去Tools > References并添加Systems_Windows_Forms,但我仍然遇到同样的错误。有谁知道我在这里想念什么?我是否也需要在我的代码中引用该库?

4

1 回答 1

3

System.Windows.Forms.FolderBrowserDialog对我来说看起来像东西.Net,而不是VBA。

您可以Application.FileDialog在 Access VBA 中使用。此示例使用后期绑定并允许用户从浏览对话框中选择文件夹。

Const msoFileDialogFolderPicker As Long = 4
Dim objFileDialog As Object ' FileDialog
Set objFileDialog = Application.FileDialog(msoFileDialogFolderPicker)

With objFileDialog 
    .AllowMultiSelect = False
    If .Show Then
        Debug.Print .SelectedItems(1)
    End If
End With

如果您更喜欢使用早期绑定,请设置对Microsoft Office [版本] 对象库的引用。然后你可以像这样声明对象......

Dim objFileDialog As FileDialog

而且您不需要定义常量,因此如果使用早期绑定,请丢弃此行...

Const msoFileDialogFolderPicker As Long = 4
于 2013-04-09T16:02:14.747 回答