本文将介绍如何使用spire.xls 在java应用程序中创建excel数据透视表及设置透视表的格式。
import com.spire.xls.*;
public class createpivottable {
public static void main(string[] args) {
//加载示例文档
workbook workbook = new workbook();
workbook.loadfromfile("sample.xlsx");
//获取第一个工作表
worksheet sheet = workbook.getworksheets().get(0);
//为需要汇总和创建分析的数据创建缓存
cellrange datarange = sheet.getcellrange("a1:c19");
pivotcache cache = workbook.getpivotcaches().add(datarange);
//使用缓存创建数据透视表,并指定透视表的名称以及在工作表中的位置
pivottable pt = sheet.getpivottables().add("pivot table", sheet.getcellrange("e10"), cache);
//添加行字段
pivotfield pf=null;
if (pt.getpivotfields().get("name") instanceof pivotfield){
pf= (pivotfield) pt.getpivotfields().get("name");
}
pf.setaxis(axistypes.row);
pivotfield pf2 =null;
if (pt.getpivotfields().get("area") instanceof pivotfield){
pf2= (pivotfield) pt.getpivotfields().get("area");
}
pf2.setaxis(axistypes.row);
//添加值字段
pt.getdatafields().add(pt.getpivotfields().get("population"), "sum of count", subtotaltypes.sum);
//设置透视表样式
pt.setbuiltinstyle(pivotbuiltinstyles.pivotstylemedium12);
//保存文档
workbook.savetofile("output/createpivottable.xlsx", excelversion.version2013);
}
}
效果图: