Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VBA Excel GetSaveAsFilename参数_Vba_Excel - Fatal编程技术网

VBA Excel GetSaveAsFilename参数

VBA Excel GetSaveAsFilename参数,vba,excel,Vba,Excel,我正在使用GetSaveAsFilename命令将单元格值写入文件。我使用这个命令,因为这个命令通过弹出菜单获取保存路径。我的问题是,如何获得选择用户以供进一步使用的路径 这里有一个例子 myFile = Application.GetSaveAsFilename(InitialFileName:=intialFilename, fileFilter:="Text Files (*.txt), *.txt") 此myFile将包含具有完整路径的新IintialFilename,如下所示: “C

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

这里有一个例子

myFile = Application.GetSaveAsFilename(InitialFileName:=intialFilename, fileFilter:="Text Files (*.txt), *.txt")
此myFile将包含具有完整路径的新IintialFilename,如下所示: “C:/test/t1.xlsm”

我如何从我的文件中获取此信息

在C++/Java中,应该是这样的:

String pathThatUserGave = myFile.InitialFileName() 

提前谢谢

只需解析字符串即可获得文件名:

Sub gdjtrf()
    myFile = Application.GetSaveAsFilename(InitialFileName:=intialFilename, fileFilter:="Text Files (*.txt), *.txt")
    ary = Split(myFile, "\")
    MsgBox myFile & vbCrLf & ary(UBound(ary))
End Sub
编辑#1:

要仅获取路径,请使用:

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

如果不需要,请放弃最后的斜杠。

哦,谢谢,它几乎是正确的,但我只需要路径,不需要文件名。我该怎么做?