首页 > 解决方案 > 从指定单元格以指定名称保存

问题描述

您好,所以我使用下面的编码尝试将活动工作表“另存为”到当前同一个文件夹,但是我面临的问题是文件名没有显示为 E6,但它只是一个空白。

此外,是否有一种更快的方法来实际忽略另存为对话框,并将其另存为与宏相同的文件夹中的新工作簿?具有与 xls 相同的文件类型。谢谢你。

在此处输入图像描述

在此处输入图像描述

Sub Button1_Click()

Dim varResult As Variant
Dim dirPath, fileName As String


dirPath = Application.ActiveWorkbook.Path
fileName = ActiveSheet.Range("E6").Value 'ActiveSheet.Name


Application.ScreenUpdating = False
Application.DisplayAlerts = False


varResult = Application.GetSaveAsFilename(FileFilter:= _
                 "Excel Files (*.xls), *.xls", Title:="Save As", _
                InitialFileName:=dirPath & "\" & fileName)

ActiveWorkbook.SaveCopyAs fileName:=varResult

Application.DisplayAlerts = True
Application.ScreenUpdating = True


End Sub

标签: excelvba

解决方案


要不使用对话框直接保存,请尝试下一个代码:

Sub testSaveAs()
   Dim wb As Workbook
    Set wb = ActiveWorkbook 'Use here your workbook
    wb.SaveAs fileName:=ThisWorkbook.path & "\" & ActiveSheet.Range("E6").value & ".xls"
 End Sub

推荐阅读