簡體   English   中英

1004錯誤-SaveAs問題

[英]1004 Error- issues with SaveAs

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”,但這似乎不起作用。

問題可能出在ActiveWorkBook 當您可以直接直接引用對象時,應避免依賴.Active.Activate.Select

刪除wbTarget.Activate並嘗試以下操作,

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

我可以看到您已嘗試調試。 MsgBox myFileName (注意:no () )應該已經顯示了您要傳遞給save命令的內容。 從上面的代碼中,它將是\\\\local drive pathWorkbook Name注意末尾也有一個空格。 您尚未定義saveDate ,尚未添加擴展名,也未指定文件格式。

有關SaveAs更多信息,請參見以下答案。

如何在vba代碼中執行“另存為”,並用datestamp保存當前的Excel工作簿?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM