我在Excel工作表上放置一个按钮,该按钮将当前工作表保存为单独的文件。以下是我正在使用的代码:
Sub SaveWorkbook()
ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:= _
"C:\Users\username\Downloads\New folder" & ActiveSheet.Name & ".xlsx", FileFormat:= _
xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
End Sub
这里不是工作表名称(ActiveSheet.Name),而是要放置来自单元格的文本(D2:E2,两个单元格都已合并)。
有可能吗?
此外,我已明确提到路径。
是否可以提示选择保存路径?
在选择路径时,可以从单元格中获取名称吗?
更新
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
你能看出这里的错误是什么吗?文件未保存在所选路径中。
答案 0 :(得分:0)
将ActiveSheet.Name
替换为ActiveSheet.[d2]
。
这将从合并的单元格中提取值。
只要从用户那里获取路径,就可以轻松实现:
Application.FileDialog(msoFileDialogFolderPicker)