GetSaveAsFilename是通过Application来调用的,而Application又是通过VBA环境来使用的,因此,本例子给你介绍的是在Excel环境下,调用另存为对话框的示例代码。
它的格式如下:
Dim Filename As String
Filename = Application.GetSaveAsFilename(FileFilter:="文件名称, *.格式")
一、代码如下
Dim fileSaveName
fileSaveName = Application.GetSaveAsFilename(fileFilter:="Text Files (*.txt), *.txt")
If fileSaveName <> False Then
MsgBox "Save as " & fileSaveName
End If
二、指定对话框的标题
Dim fname As String
Workbooks.Open filename:=2099成绩.xls
ActiveSheet.Range(A1).Value = 保存
fname = Application.GetSaveAsFilename( _
InitialFileName:=成绩保存.xls, _
Title:=这里是标题文字)
If fname <> False Then
ActiveWorkbook.SaveAs filename:=fname
End If
知识拓展:
Application.GetSaveAsFilename 方法:简单来说就是显示另存为对话框,方便用户输入文件名进行保存
语法:
expression.GetSaveAsFilename(InitialFilename, FileFilter, FilterIndex, Title, ButtonText)
expression 必需。该表达式返回Application类型对象
InitialFilename Variant类型,可选。指定初始的文件名
FileFilter Variant类型,可选。一个指定文件筛选条件的字符串,格式如:"文本文件, *.txt"
FilterIndex Variant 类型,可选。指定默认文件筛选条件的索引号,取值范围为 1 到 FileFilter 指定的筛选条件数目之间
Title Variant 类型,可选。指定对话框标题
ButtonText Variant 类型,可选。仅用于 Macintosh
使用的时候请注意如下几项:
1.如果省略InitialFilename参数,Microsoft Excel 将活动工作簿的名称作为初始文件名
2.如果省略FileFilter参数,则默认参数值为“所有文件 (*.*),*.*”
3.如果省略FilterIndex参数,或者取值大于可用筛选数目,则采用第一个文件筛选条件
4.如果省略Title参数,则使用默认标题。