使用C#代码在Excel中创建数据透视表
数据透视表是一种交互式表格,能够快速计算、汇总和分析大量数据。作为 Excel 中最强大的工具之一,它使用户能够从不同角度查看静态数据,同时让数据之间的比较更加直观。在本文中,您将学习如何使用 Spire.XLS for .NET 编程创建 Excel 数据透视表。
Spire.XLS for .NET是什么?
Spire.XLS for .NET 是由 E-ICEBLUE 提供的一款专业 Excel 操作类库,专为 .NET 开发者设计。它允许开发者在无需安装 Microsoft Excel 的情况下,创建、读取、编辑、转换和导出 Excel 文件(包括 XLS 和 XLSX 格式)。
主要特点包括:
全功能 Excel 操作:支持数据写入、公式计算、单元格样式设置、图表插入、条件格式、数据验证等常用功能。
强大的文档转换能力:可以将 Excel 文件转换为 PDF、HTML、图片等多种格式。
数据透视表与图表支持:可以创建和修改数据透视表、图表,实现数据分析和可视化。
独立运行:不依赖 Microsoft Office 或 Excel 安装环境,适合在服务器端或桌面应用中使用。
安全高效:所有操作在本地完成,数据安全可靠,同时处理大数据文件性能优越。
Spire.XLS for .NET 不仅适合企业开发者在应用程序中集成 Excel 功能,也适合需要自动化处理大量 Excel 数据的开发场景,是 .NET 环境下处理 Excel 文件的高效工具。
安装 Spire.XLS for .NET
首先,您需要将 Spire.XLS for .NET 包中的 DLL 文件添加为 .NET 项目的引用。这些 DLL 文件可以通过此链接下载,或通过 NuGet 安装。
PM> Install-Package Spire.XLS在 Excel 中创建数据透视表
详细步骤如下:
创建一个 Workbook 对象。
使用
Workbook.LoadFromFile()方法加载示例 Excel 文档。通过
Workbook.Worksheets[]属性获取指定的工作表。使用
Worksheet.Range[]属性选择数据源范围,然后通过Workbook.PivotCaches.Add(CellRange)方法创建 PivotCache 来保存数据源信息。使用
Worksheet.PivotTables.Add(String, CellRange, PivotCache)方法在指定工作表中添加数据透视表,并设置其位置和缓存。定义数据透视表的行标签,然后使用
PivotTable.DataFields.Add(IPivotField, String, SubtotalTypes)方法将字段添加到数据区域进行计算。使用
PivotTable.BuiltInStyle属性设置数据透视表的样式。使用
Workbook.SaveToFile()方法保存结果文档。
完整示例代码如下:
using Spire.Xls;namespace createPivotTable
{class Program{static void Main(string[] args){//创建一个 Workbook 对象Workbook workbook = new Workbook();//加载示例 Excel 文档workbook.LoadFromFile(@"E:\Files\sample.xlsx");//获取指定的工作表Worksheet sheet = workbook.Worksheets[0];//选择数据源范围CellRange dataRange = sheet.Range["B1:F11"];PivotCache cache = workbook.PivotCaches.Add(dataRange);//创建 PivotCache 来保存数据源信息PivotTable pt = sheet.PivotTables.Add("Pivot Table", sheet.Range["H3"], cache);//定义数据透视表的行标签PivotField r1 = pt.PivotFields["Country"] as PivotField;r1.Axis = AxisTypes.Row;pt.Options.RowHeaderCaption = "Country";PivotField r2 = pt.PivotFields["Product"] as PivotField;r2.Axis = AxisTypes.Row;//将字段添加到数据区域进行计算pt.DataFields.Add(pt.PivotFields["Quantity"], "SUM of Quantity", SubtotalTypes.Sum);pt.DataFields.Add(pt.PivotFields["Total Amount"], "SUM of Total Amount", SubtotalTypes.Sum);//设置数据透视表的样式pt.BuiltInStyle = PivotBuiltInStyles.PivotStyleMedium10;//保存结果文件workbook.SaveToFile("CreatePivotTable.xlsx", ExcelVersion.Version2010);}}
}申请临时许可证
如果您希望去除生成文档中的评估信息,或解除功能限制,请为自己申请一份 30 天的试用许可证。
