在未安装 Excel 的情况下以编程方式填充 Excel 模板

Populating an Excel template programmatically without Excel installed

我们的服务器有 SQL(特别是 SSIS)但没有安装 Excel(我们的政策禁止这样做),但是来自 SSIS 的数据需要生成格式化的 Excel 文件(带有固定图像)并将其放在输出目录中。

是否可以通过编程方式(可能使用 .NET)在 Excel 模板文件中填充值和图表的源数据,而不 Excel 实际上安装在计算机上?

@酒吧, 我认为,您可以考虑使用 Aspose.Cell for .NET APIs as they do not require the availability of Excel application in order to dynamically create, manipulate or convert the spreadsheets. Moreover, these APIs provide a verity of means to import the data onto the worksheet,例如 Array、ArrayList、DataTable、DataColumn、DataView、DataGrid、DataReader 和 GridView。此外,如果您在电子表格上有预先配置的图表,您可以简单地更新图表的数据源以使用新数据刷新它,或者从头开始创建图表以最终将 chart/spreadsheet 转换为多种格式。 我在 Aspose 担任开发人员布道师。

有一些 .NET 库可以在不安装 Microsoft Office 套件的情况下生成、导入和导出 Excel 文件。对于开源,我建议你使用 NPOI, which seems to meet your demand from your description. For commercial version with support, Spire.Xls 是一个选项。

@Prorata

我可以知道 Aspose.Cell for .NET API 支持预定义 Excel 模板中的 Power Pivot 数据刷新吗? Excel 可能需要连接到 SQL 数据库 table 以进行数据刷新并使用 Excel 2010 版。这可能吗?

Syncfusion Essential XlsIO 可用于在服务器或 PC 上生成 Excel 文件。该库可用于 Windows Forms、WPF、ASP.NET Webforms、ASP.NET MVC、Silverlight、WinRT、Windows Phone、Windows store通用和 Xamarin 应用程序

如果您符合条件,可通过 community license 计划免费获得整套控件(也可用于商业应用程序)。社区许可证是没有限制或水印的完整产品。

注意:我为 Syncfusion 工作。