保存VSTO工作簿的非VSTO副本

我想从一个.NET 3.5 Excel 2007 VSTO工作簿保存一个ListObject到一个新工作表(完成),并保存新工作表(没有工作簿需要VSTO自定义文件(!!!!!)) 。

有没有人有这个运气? 我获得成功的唯一方法就是保存为一个CSV文件,但在这种情况下,这是不可接受的。 我宁愿不保存到一个CSV只是为了复制回XLS文件。

worksheet.SaveAs(saveDialog.FileName,Excel.XlFileFormat.xlOpenXMLWorkbook)

如果我理解正确,您不希望新的工作簿文件依赖或加载任何VSTO定制?

尝试此MSDN链接从工作簿中删除VSTO定制程序集。

好吧,这并没有最终为我工作,这是为什么。 答案仍然正确,但我想澄清未来的用户。

我有一个ListObject,我想使用VSTO保存在外部工作簿中。 创build一个新的工作表并使用另存为将重命名当前工作簿,因此我将不得不closures整个工作簿以删除自定义。

我从一开始就应该做的是:

创build工作表并在工作表上填充ListObject。 然后使用没有参数的.Copy()来创build一个新的工作簿。 但是,如何find工作簿呢? 我简单地命名工作表Now.Ticks.ToString()并查找任何打开的工作簿与Active.Ticks.ToString()的ActiveSheet.Name。 对于这个应用程序,它不需要更深入。 我保存了THAT工作簿,然后closures它。 由于该工作簿是用Copy创build的,所以没有对其进行自定义,并解决了问题。