我正在寻找一个允许我以编程方式修改Excel文件以将数据添加到某些单元格的库.我目前的想法是使用命名范围来确定插入新数据的位置(基本上是1×1的范围),然后更新命名范围以指向数据.这个要集成的现有应用程序完全用C语言编写,所以我理想地寻找C解决方案(因此
this thread的用途有限).如果所有其他方法都失败了,我会使用.NET解决方案,如果有某种方法可以将它与我们的C应用程序相关联.
一个理想的解决方案是开源,但到目前为止我所看到的(MyXls和XLSSTREAM)似乎都没有达到挑战.我喜欢Aspose.Cells的外观,但它适用于.NET或Java,而不是C(并且需要花钱).我需要支持从97到现在的所有Excel格式,包括XLSX和XLSB格式.理想情况下,它还支持OpenOffice和(输出)PDF和HTML等格式.
我需要支持的一些用例:
>读取和修改电子表格中的任何单元格,包括公式
>创建,读取,修改命名范围(范围本身,而不仅仅是单元格)
>将格式从单元格复制到其他一些单元格(包括条件格式) – 我们将使用一个单元格作为模板,用于我们用数据填充的所有其他单元格.
任何帮助,你可以给我找到一个合适的图书馆会很棒.我还想听听一些有关各种建议的推荐(包括我的帖子中的建议),这样我就可以做出更明智的决定 – 什么方便使用,无错误,便宜等等?
解决方法
最安全的建议是使用OLE.它使用COM,它根本不需要.NET.
http://en.wikipedia.org/wiki/OLE_Automation< - 大约一半是C的例子. 您可能必须将一些功能包含在可用性功能中,但使用它并不是很难看. 编辑:请注意,您需要一份Excel副本才能正常工作.此外,还有一些您可以找到特定于Excel的第一方.h文件. (这些都在维基百科的文章中解释过)