2015-04-03 89 views
2

我有Excel記錄選擇另存爲,將特定位置和文件名的步驟,它會產生這樣的VBA代碼:Excel 2007中VBA ActiveWorkbook另存爲不節能...運行時錯誤1004

ActiveWorkbook.SaveAs Filename:= _ 
    "H:\Documents\Data\Tasks\Transfer.xlsx" _ 
    , FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False 

也曾嘗試設置的FileFormat爲

FileFormat:=51 

我還包括下面的處理程序,但它並沒有帶或不帶他們一起工作:

On Error Resume Next 
Application.DisplayAlerts = False 

原始文件爲.xls格式。

當我運行宏允許顯示警報,它會產生這樣的錯誤:

Run-time error '1004': 
Method 'SaveAs' of object '_Workbook' failed 

這用來工作,直到我相信將Windows 8和在工作中一個新的網絡服務器。類似的東西會影響SaveAs嗎?

我錯過了什麼?感謝您提供的任何提示。

+0

是否工作,如果你映射的驅動器(H)更改爲UNC,如\\服務器\文件...? – 2015-04-03 19:11:34

+1

是的,我可以手動將這些.xls文件保存爲.xlsx。 關於UNC的好處。有時宏錄像機也會根據位置產生,所以我嘗試了這兩種方式。 – 2015-04-03 19:40:11

回答

0

試試這個

Application.ActiveWorkbook.SaveAs Filename:="H:\Documents\Data\Tasks\Transfer.xlsx", fileformat:=51 
+0

這不是OP已經做出的嘗試之一嗎? – pnuts 2015-04-03 19:02:37