Vba 保存后,将在“我的文档”中创建Excel加载项的副本
我有一个应用程序(在IBMNotes中运行,使用Lotusscript等),它通过OLE自动化创建一个新的Excel对象。在我的应用程序中,我创建了一个新工作簿,并将其保存到一个临时文件夹中(我将其保存为Excel工作表w/o macros->type 52),以便恢复文件如下所示:Vba 保存后,将在“我的文档”中创建Excel加载项的副本,vba,excel,ms-office,ole,Vba,Excel,Ms Office,Ole,我有一个应用程序(在IBMNotes中运行,使用Lotusscript等),它通过OLE自动化创建一个新的Excel对象。在我的应用程序中,我创建了一个新工作簿,并将其保存到一个临时文件夹中(我将其保存为Excel工作表w/o macros->type 52),以便恢复文件如下所示: tmp_abc1234.xlsx 然后我以编程方式在Excel中打开该文件。我有一个Excel加载项(文件名为“Teamoffice.xlam”),在某些宏所在的位置加载,我将在自定义保存操作栏按钮中触发该加载项
tmp_abc1234.xlsx
然后我以编程方式在Excel中打开该文件。我有一个Excel加载项(文件名为“Teamoffice.xlam”),在某些宏所在的位置加载,我将在自定义保存操作栏按钮中触发该加载项。在此保存方法中,我还调用保存函数:
Call ActiveWorkbook.Save
Call ThisWorkbook.Save
出于某种原因,Excel在“我的文档”文件夹中创建了一个名为“Teamoffice.xlsm”的文件。该文件本身无法在Excel中打开(“错误的文件格式错误”)-当然,它是一个加载项
如果我的应用程序中只打开了一个Excel文档,那么这种方法很有效。如果我打开了第二个(或更多)文档,我就会遇到麻烦:每次我保存打开的(或新创建的)辅助文档时,Excel都会问我是否要覆盖该“Teamoffice.xlsm”文件
我在ma宏中添加了VBA代码,用于检测此文件是否存在并尝试将其删除。当然没有运气,因为Excel的第一个实例已经锁定了该文件。不过,在询问Excel问题对话框时覆盖该文件是可行的,但我不希望出现该问题
Excel在独立使用时(不含OLE)的行为与此不同
由此产生的几个问题:
ThisWorkbook.Save
这就是原因。如果省略它,则不会创建任何文件。奇怪的是,这将加载项文件保存为xlsm文件。乍一看,所有问题都来自代码。我建议重新检查代码。或者,如果你想获得有价值的反馈,请指定你完成工作所使用的代码。你指的是什么代码?创建OLE对象的过程是什么?