【发布时间】:2015-11-25 18:33:31
【问题描述】:
我正在寻找一个宏,它在运行时会从单元格中获取值并使用该名称保存它,并提示输入保存文件的路径。以下是我的尝试:
Sub SelectFolder()
Dim diaFolder As FileDialog
Set diaFolder = Application.FileDialog(msoFileDialogFolderPicker)
diaFolder.AllowMultiSelect = False
diaFolder.Show
ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:= _
diaFolder & ActiveSheet.[d2] & ".xlsx", FileFormat:= _
xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
Set diaFolder = Nothing
End Sub
在此值是从单元格中获取的,并且会提示询问文件夹以保存文件。但该文件不存储在文件夹中,而是存储在单独的文件夹中。我想这里需要做一个小修正。
同样在保存时,它会警告我可能存在 97-2003 文件类型的兼容性问题。我想这行有一些需要纠正的地方:
diaFolder & ActiveSheet.[d2] & ".xlsx", FileFormat:= _
xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False
但不知道要更改什么。我希望文件为 .xlsx 格式,并且与所有设备兼容。
谁能帮我做这两个?
【问题讨论】:
-
只是为了更好地理解,您正在使用单元格 D2 中的名称保存文件?
-
关于你的第二个问题,你正在保存到一些古老版本的 excel...
FileFormat:= _ xlExcel8 -
是的.. 之后我选择保存它的路径。我能够做到这一点。但是文件没有保存在选择的路径中
-
@findwindow 哦.. 我猜这应该是问题所在。我们现在可以改什么版本?
-
我只是省略了文件格式。实际上,您可以省略所有参数...仅在对您很重要时设置参数。