FileDialog对象

返回表示文件对话框实例的 FileDialog 对象。

语法

expression。 FileDialog_fileDialogType_ )

expression:表示 Application 对象的变量。

参数

名称必需/可选数据类型说明
fileDialogType 必需 MsoFileDialogType 文件对话框的类型。

备注

MsoFileDialogType 可以是 MsoFileDialogType 常量之一。

| msoFileDialogFilePicker。 允许用户选择文件。|1主要

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

| msoFileDialogOpen。 允许用户打开文件。|3

| msoFileDialogSaveAs。 允许用户保存文件。|4

FileDialogFilters 对象

表示可在使用FileDialog对象显示一个文件对话框中选择的文件类型的FileDialogFilter对象的集合。

FileDialogFilters.Add 方法 

将新的文件筛选器添加到文件对话框中的文件类型下拉列表框中的筛选器列表。 返回一个代表新添加的文件筛选器的FileDialogFilter对象。

语法

expression。 Add(DescriptionExtensionsPosition)

expression:必需。 一个代表FileDialogFilters对象的变量。

参数

名称必需/可选数据类型说明
Description 必需 String 要添加的筛选器列表中表示的文件扩展名的说明的文本。
Extensions 必需 String 要添加的筛选器列表中表示的文件扩展名的文本。 可以指定多个扩展和每个必须用分号分隔。 例如,参数可分配给字符串:".txt;.htm"。

注意: 括号不需要在扩展名添加。 说明和扩展名字符串连接到一个文件筛选器项时,Microsoft Office 将自动添加扩展字符串围绕括号。
Position 可选 Variant 一个数字,指示新控件的筛选器列表中的位置。 将此位置的筛选器之前插入新的筛选器。 如果省略此参数,则筛选器被添加到列表末尾。

 例子默认路径下多选excel 或者所有文件,显示选择的第一个文件

 1 Sub SelectFile()
 2 
 3     '选择单一文件
 4 
 5     With Application.FileDialog(msoFileDialogFilePicker)
 6         .InitialFileName = ThisWorkbook.Path '初始路径
 7         .AllowMultiSelect = True '多选
 8         .Filters.Clear '清除文件过滤器
 9         
10         .Filters.Add "Excel Files", "*.xls;*.xlw"
11         .Filters.Add "All Files", "*.*"
12         '设置两个文件过滤器
13         
14         If .Show = -1 Then
15             'FileDialog 对象的 Show 方法显示对话框,并且返回 -1(如果您按 OK)和 0(如果您按 Cancel)。
16             MsgBox "您选择的文件是:" & .SelectedItems(1) 'SelectedItems.Count  多个可以考虑遍历
17         End If
18         
19     End With
20 End Sub
原文地址:https://www.cnblogs.com/Ionefox/p/10247470.html