使用C#excel OpenXML API从模板创build报告

我一直在使用Microsoft COM模型来准备报告,但是如果服务器没有安装excel,它会很慢并且会失败。 所以我正在转向使用OpenXML从服务器进程创build报告,这个服务器进程也做了很多其他的事情。

我有一个模板,其中包含我需要更改或扩展的数据的命名范围,命名图表,命名图表系列,命名工作表等。所有我的格式包含在Excel文件中,我在我的服务器端进程中的所有格式都是填充的带有数据的文件。

这些是我需要使用Excel OpenXML进行复制的步骤:

  1. 打开一个现有的工作表,并基于它创build一个新的工作表。
  2. 通过工作表名称获取工作表
  3. 获取该工作表中的命名范围。
  4. 从数据填充命名范围,并根据需要扩展范围(基于数据集)。
  5. 按图表名称获取图表
  6. 按系列标题获取图表系列
  7. 将图表系列设置为新的范围
  8. 将图表导出为jpeg以在html中使用。
  9. 保存新的文件。

是否可以干净地在OpenXML中执行这些步骤? 任何例子都会帮助我很多。 或者这是一个轻量级的库。 这些第三方库中的一些太大,从头开始创build新表格更加有用。

任何帮助赞赏。

AFAIK,与OpenXml你可以做任何事情。

我推荐一个ClosedXml库,它封装了OpenXML SDK,使你更容易完成工作。 链接包含样本和东西。 希望有所帮助。