VBA Excel GetSaveAsFilename参数

时间:2016-04-03 14:19:56

标签: excel vba excel-vba

我正在使用GetSaveAsFilename命令将单元格值写入文件。我使用这个,因为这个命令使用弹出菜单获取保存路径。我的问题是,我如何获得选择用户进一步使用的路径?

这是一个例子

myFile = Application.GetSaveAsFilename(InitialFileName:=intialFilename, fileFilter:="Text Files (*.txt), *.txt")

这个myFile将包含新的IintialFilename wtith完整路径,如下所示: “C:/test/t1.xlsm”

如何从myFile获取此信息?

在C ++ / Java中,它将是这样的:

String pathThatUserGave = myFile.InitialFileName() 

提前致谢!

1 个答案:

答案 0 :(得分:0)

只需解析字符串以获取文件名:

Sub gdjtrf2()
    myFile = Application.GetSaveAsFilename(InitialFileName:=intialFilename, fileFilter:="Text Files (*.txt), *.txt")
    ary = Split(myFile, "\")
    ary(UBound(ary)) = ""
    s = Join(ary, "\")
    MsgBox s
End Sub

修改#1:

要获取路径,请使用:

MF_E_INVALIDMEDIATYPE

如果您不需要,请丢弃最终斜杠。