Excel文档级别部署问题

我们有一个VSTO excel文档级项目。 作为这个项目的一部分创build的Excel文档有一个工作表(名为Start Sheet),它有一些WinForms控件(如button,checkbox等),还有许多其他工作表,主要包含数据。 我们使用Windows安装程序将此解决scheme部署到客户机。 excel版本是excel 2007和VSTO 2010。

无论何时我们的解决scheme部署在客户端机器上,客户端通常会在其计算机上定制excel文档。 就像他们会添加一些新的工作表,除了我们已经添加。 他们还安装了一些像PI这样的插件来将数据引入这些工作表。 现在我们通常会从客户那里获得增强的要求,而且大部分增强function都是在Excel文档中添加新的表格。 几乎99%的要求是添加一个新的表。 每张表单后面的代码是一些业务逻辑,主要由Start表单上的Winform控件触发。

现在他们每次都安装一个增强版的解决scheme,最终得到一个新的excel文档,然后他们必须再次定制它(比如添加一些表格,编写macros等),这对他们来说是很有用的。 这对我们来说是一个很大的问题,因为我们的客户根本就不喜欢它。

有没有一种方法,他们可以部署新版本的解决scheme,仍然保持其Excel文档自定义不变? 我对VSTO的经验并不多,帮助将不胜感激。

我会改变项目的devise,以便将代码和模板元素(工作表,格式,公式,控件,封装数据等)从用户excel文档中分离出来,但可以生成或修改用户文档。 EUI将是Excel菜单/工具栏或function区选项卡。
通常你可以通过创build一个Excel地址(XLA,XLL,COM或者自动化插件)来实现这一点。

另一种select是在升级过程中安装一个升级例程,在安装过程中复制旧文档,用新文档replace旧文档,然后遍历旧的副本以获取新的工作表,以及不要过期。