1004错误-SaveAs问题

时间:2018-07-16 21:07:17

标签: vba save

savePath = "\\local drive path"

myFileName = savePath & "Workbook Name " & saveDate

Application.DisplayAlerts = False

'MsgBox (myFileName)

wbTarget.Activate

ActiveWorkbook.SaveAs Filename:=myFileName, FileFormat:=xlOpenXMLWorkbook

使用上面的代码时,出现错误1004“ object_Workbook的方法SaveAs失败,无法弄清楚原因。我对excel还是比较陌生,但是我已经正确设置了一切。

更新:对不起,应该已经显示了更完整的代码。

Sub SaveAs()


'Save As "Workbook Name"

Dim wbTarget            As Workbook
Dim wbThis              As Workbook
Dim strName             As String

Set wbTarget = Workbooks("Workbook Name")

wbTarget.Activate

Dim myFileName As String
Dim saveDate As String
Dim saveMonth As String
Dim monthNum As String
Dim savePath As String

Sheets("Raw").Select

saveDate = Range("A2").Value
saveMonth = Range("A2").Value
monthNum = Range("A2").Value


savePath = "\\local drive path"

myFileName = savePath & "Riskviews Data " & saveDate

Application.DisplayAlerts = False

'MsgBox (myFileName)

wbTarget.SaveAs Filename:=myFileName, FileFormat:=xlOpenXMLWorkbook



End Sub

我将最后一部分更新为“ wbTarget.SaveAs”,但这似乎不起作用。

2 个答案:

答案 0 :(得分:1)

问题可能出在ActiveWorkBook上。当您可以直接直接引用对象时,应避免依赖.Active.Activate.Select

删除wbTarget.Activate并尝试以下操作

WbTarget.SaveAs Filename:=myFileName, FileFormat:=xlOpenXMLWorkbook

答案 1 :(得分:0)

我可以看到您已尝试调试。 MsgBox myFileName(注意:否())应该已经显示了您要传递给save命令的内容。在上面的代码中,应该是\\local drive pathWorkbook Name-注意结尾处也有空格。您尚未定义saveDate,尚未添加扩展名,也未指定文件格式。

有关SaveAs的更多信息,请参见以下答案。

How to do a "Save As" in vba code, saving my current Excel workbook with datestamp?

相关问题