使用Excel工作表作为模板与OpenXML中的“真实”Excel模板

有没有人有什么好的答案之间有什么样的差异

  • 使用一些任意预格式化的Excel 2007 * .xlsx文件作为模板,将其加载到我的C#应用​​程序中,并使用Microsoft OpenXML SDK填充其数据单元格

  • 创build特定的Excel模板(* .xltx)文件,并将其用作“数据填充”练习的基础

当我不使用Excel模板(* .xltx)时,是否会丢失一些东西?

如果是这样 – 我会发生什么?

不,你一点也不会输。 XSTX在所有方面都与XLSX相同,只是如果打开的文件是XSTX,Excel将创build一个XLXS的新实例。 就这样。 如果您使用XSTX进行数据填充并保存XSLX,则打开生成的XSLX时,每个新实例(XLSX)都将具有该数据。

另一个问题是,如果您正在使用OOXML进行数据填充,您是否需要使用XSTX – 只要预格式化,我看不到任何您需要使用XSTX的原因XSLX用另一个文件名保存,你的XSLX应该可以作为模板。 XSTX实际上是用于Excel客户端应用程序的操作 – 诸如OOXML之类的编程解决scheme在使用不同的文件扩展名方面没有任何优点(但是VSTO并非如此,这也是Excel客户端应用程序操作)。