您当前的位置:首页 > 文本与office

VBA(Excel或Access)使用文件对话框FileDialog的几种方法

时间:07-08来源:作者:点击数:

应用场景:Excel 或Access弹出文件选择对话框让用户选择图片或照片

如人事系统让用户可选择照片文件,即弹出个窗口让用户选择

或产品资料窗体让用户选择产品图片等场景

第一种办法:

不使用第三方控件,可以使用Excel 或Access 内置的Application.Filedialog

Excel

Sub UseFileDialogOpen()

Dim lngCount As Long

' 打开文件对话框

With Application.FileDialog(msoFileDialogOpen)

.AllowMultiSelect = True ’允许多选

.Show

' 每个文件路径名

For lngCount = 1 To .SelectedItems.Count

MsgBox .SelectedItems(lngCount)

Next lngCount

End With

End Sub


MsoFileDialogType 可为下述常量之一:

msoFileDialogFilePicker。 允许用户选择文件。

msoFileDialogFolderPicker。 允许用户选择文件夹。

msoFileDialogOpen。 允许用户打开文件。

msoFileDialogSaveAs。 允许用户保存文件。

FileDialog 用法之 打开对话框获得文件夹路径

FileDialog 可以根据后面的参数,打开通用对话框

Dim strPath As String

Dim MyFileDialog As FileDialog

Set MyFileDialog = Application.FileDialog(msoFileDialogFolderPicker)

If MyFileDialog.Show = -1 Then

'使用循环显示选取文件的路径和名称

For Each vrtSelectedItem In MyFileDialog.SelectedItems

strPath = vrtSelectedItem

Next

End If

MsgBox strPath

第二种方法:

使用CommonDialog对话框控件

在Access窗体上放一个CommonDialog对话框控件,再放一个command按钮,加入如下代码

dim strFilePathName as String

With CommonDialog 'CommonDialog 是控件名

.DialogTitle = "打开"

.CancelError = False

'ToDo: 设置 common dialog 控件的标志和属性

.Filter = "显示文件 (*.gif)|*.gif"

.ShowOpen

If Len(.FileName) = 0 Then

Exit Sub

End If

strFilePathName = Trim(.FileName)

End With

其中strFilePathName 就是路径+文件名

第三种方法:

自己写类模块, 这种方法代码比较长,大家可百度一下

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门