|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
以下是笔者对 Excel VBA之 Application.GetOpenFilename 方法的解析:
功能:显示标准的“打开”对话框,并获取用户文件名,而不必真正打开任何文件。
语法:Application.GetOpenFilename(FileFilter, FilterIndex, Title, ButtonText, MultiSelect)
参数及说明如下表所示:
名称 说明
FileFilter 可选参数,代表指定文件筛选条件的字符串。如果省略该参数,默认为:“所有文件(*.*),*.*”。
FilterIndex 可选参数,指定默认文件筛选条件的索引号,取值范围为 1 到由 FileFilter 所指定的筛选条件数目。如果省略该参数,或者该参数的值大于可用筛选条件数,则使用第一个文件筛选条件。
Title 可选参数,指定对话框的标题。如果省略该参数,则标题为“打开”。
ButtonText 可选参数,仅用于 Macintosh 机器。
MultiSelect 可选参数,如果为 True,则允许选择多个文件名。如果为 False,则只允许选择一个文件名。默认值为 False。
示例代码1:
Sub SelectAFile() 'MultiSelect省略默认为false,选择单个文件
Dim filter As String
Dim fileToOpen
filter = "All Files(*.*),*.*,Word Documents(*.do*),*.do*," & _
"Text Files(*.txt),*.txt,Excel Files(*.xl*), * .xl * "
fileToOpen = Application.GetOpenFilename(filter, 4, "请选择文件")
If fileToOpen = False Then
MsgBox "你没有选择文件", vbOKOnly, "提示"
Else
MsgBox "你选择的文件是:" & fileToOpen, vbOKOnly, "提示"
End If
End Sub
上面的代码将显示标题为“请选择文件”的对话框,只能选择一个文件,“文件类型”下拉列表框有4个选项,打开时默认为第4个(Excel Files(*.xl*)),如下图所示:
Sub SelectFiles() 'MultiSelect为true,可选择多个文件
Dim filter As String
Dim fileToOpen
filter = "All Files(*.*),*.*,Word Documents(*.do*),*.do*," & _
"Text Files(*.txt),*.txt,Excel Files(*.xl*), * .xl * "
fileToOpen = Application.GetOpenFilename(filefilter:=filter, FilterIndex:=2, Title:="请选择文件", MultiSelect:=True)
If Not IsArray(fileToOpen) Then
MsgBox "你没有选择文件", vbOKOnly, "提示"
Else
MsgBox "你选择的文件是:" & vbCrLf & Join(fileToOpen, vbCrLf)
End If
End Sub
上面的代码将显示标题为“请选择文件”的对话框,可以选择多个文件,“文件类型”下拉列表框有4个选项,打开时默认为第2个(Word Documents(*.do*)),如下图所示:
GetOpenFilename.zip
(119.99 KB, 下载次数: 785)
|
评分
-
3
查看全部评分
-
|