使用单元格值作为标题将工作表保存为新工作簿

时间:2018-01-26 18:10:47

标签: excel vba

我有以下代码:

Sub SaveFinalMTO()

Application.ScreenUpdating = False
Sheets("Final MTO").Select
Sheets("Final MTO").Copy

'grab the file name from b6:m6, put it in variable ThisFile
ThisFile = Sheets("Final MTO").Range("b6:m6").Value

Sheets("Final MTO").SaveAs Filename:="C:\Users\owner\Desktop\" & ThisFile & ".xlsm"

Application.ScreenUpdating = True
ActiveWorkbook.Close

End Sub

一切都很好。使用正确的工作表创建新工作簿。新文件已打开,但文件名为" Book1"而不是范围B6:M6中的值,它是使用连接函数的合并单元格。我尝试使用一个只有一个值的未合并,我还在拉一个

  

运行时错误" 13"

非常感谢任何解决此错误的帮助。谢谢。

1 个答案:

答案 0 :(得分:1)

如果要将其保存为启用宏的文件类型,则必须指定该文件类型。此外,您可以使用Environ$使文件夹名称动态化。

Sheets("Final MTO").SaveAs Filename:="C:\Users\" & Environ$("Username") & "\Desktop\" & ThisFile & ".xlsm", xlOpenXMLWorkbookMacroEnabled

XlFileFormat Enumerations