Excel 2007 VBA ActiveWorkbook SaveAs 未保存...运行时错误 1004
Posted
技术标签:
【中文标题】Excel 2007 VBA ActiveWorkbook SaveAs 未保存...运行时错误 1004【英文标题】:Excel 2007 VBA ActiveWorkbook SaveAs not saving ... Run-time error 1004 【发布时间】:2015-04-03 18:32:30 【问题描述】:我让 Excel 记录了选择“另存为”并应用特定位置和文件名的步骤,它会生成以下 VBA 代码:
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 吗?
我错过了什么?感谢您提供的任何提示。
【问题讨论】:
如果将映射驱动器 (H) 更改为 UNC,例如 \\Server\Documents ... 是否有效? 是的,我可以手动将这些 .xls 文件另存为 .xlsx。关于UNC的好点。有时宏记录器也会根据位置产生这种情况,所以我尝试了两种方式。 【参考方案1】:试试这个
Application.ActiveWorkbook.SaveAs Filename:="H:\Documents\Data\Tasks\Transfer.xlsx", fileformat:=51
【讨论】:
以上是关于Excel 2007 VBA ActiveWorkbook SaveAs 未保存...运行时错误 1004的主要内容,如果未能解决你的问题,请参考以下文章
从 Access 2007 VBA 代码创建 .xlsx 文件时强制用户使用 Excel 版本
VBA excel英语2007导致excel 2016法语错误消息
Excel 2007 VBA - 数据透视表字段列表???产生错误