我过去偶尔会遇到此错误,但现在每次运行宏时都会得到此错误:
运行时错误'-2147417851(80010105)': 对象“ _Workbook”的方法“ SaveAs”失败
本质上,我试图做的是将数据从大型个人excel工作簿复制到Sharepoint上的Excel工作簿。我通过第三个辅助电子表格来完成此操作。该帮助电子表格(设置为ActiveWorkbook)成功打开了两个Excel工作表,并在复制和粘贴数据之前进行了一些错误检查。但是现在,它不会保存到Sharepoint ...这是调试器在以下位置停止的代码块:
我已将助手工作簿设置为活动工作簿。我试图将SPwkbk设置为活动工作簿,但这会导致Excel崩溃。
我在Sharepoint上为.xlsx添加了FileFormat:= 1标记,但这似乎没有效果。
我曾考虑一次保存到一个工作表(个人工作表和Sharepoint的工作表名称相同),但是我认为这会使程序比现在慢...
Application.DisplayAlerts = False
SPwkbk.SaveAs Filename:=SPwkbkPath, AccessMode:=xlExclusive, _
ConflictResolution:=Excel.XlSaveConflictResolution.xlLocalSessionChanges
SPwkbk.Close
myWkbk.Close SaveChanges:=False
我知道它可以像以前一样正确地复制和粘贴...但是我不明白是什么阻止了它的保存,即使没有人在Sharepoint上编辑/查看该文件也是如此。可能是什么原因造成的?
答案 0 :(得分:0)
您需要在文件末尾添加文件格式,我认为这就是为什么会引发错误。
ActiveWorkbook.SaveAs Filename:=myFileName, FileFormat:=xlWorkbookNormal
.SaveAs Application.UserLibraryPath & AddinName, 55 'file type for addins extension