无法保存新创建的VBA工作簿

时间:2015-11-25 13:33:57

标签: excel vba excel-vba

我正在开始一个新项目并且在开始时遇到麻烦= [。因此,我经常需要从非常大的Excel工作表中提取特定数据,并为该数据创建一个新的Excel工作表。目前我正在尝试创建一个新工作簿并将其保存到文件路径。我在SaveAs执行行上收到错误。知道为什么会这样吗?错误是:

  

“对象'_Workbook'的方法'另存为'失败。

Dim Path As String
Dim dat As String
Dim Client As String

Path = "C:\Back\Test\"
ThisWorkbook.Sheets("Control Panel").Activate
dat = Range("F42")
Client = Range("F43")

Workbooks.Add
ActiveWorkbook.SaveAs Filename:=Path & Date & "-" & Client & ".xls", FileFormat:=xlNormal
newWBName = ActiveWorkbook.Name

1 个答案:

答案 0 :(得分:0)

我会建议我获取您的需求。

这是sub应该做你需要的。所以首先我建议将所有变量调暗,不要使用激活。而是使用工作表变量,并通过不通过范围的单元格访问单个值。

但您的主要问题可能是您尝试使用保留字Date。如果您不清楚某些事情,请告诉我。

Sub save()

Dim filePath As String
Dim dateFromSheet As String
Dim clientName As String
Dim controlPanelSheet As Worksheet
Dim newWorkbookName As String

Set controlPanelSheet = Sheets("Control Panel")

filePath = "c:\Users\sukl\Documents\"

With controlPanelSheet
    dateFromSheet = .Cells(42, "F").Value
    clientName = .Cells(43, "F").Value

End With

ThisWorkbook.SaveAs Filename:=filePath & dateFromSheet & "-" & clientName & ".xls", FileFormat:=xlNormal
newWorkbookName = ThisWorkbook.Name
End Sub