Excel 數據透視表具有強大的數據處理功能,能夠使表格中的數據更加直觀化。使用Excel 數據透視表,能方便用戶快速的排序、 篩選各種數據,同時也能滿足用戶對不同數據彙總的需求。本文將介紹如何在Java應用程序中創建Excel數據透視表及設置透視表的格式。
使用工具: Free Spire. XLS for Java ( 免費版 )
Jar文件導入方法
方法一:
下載最新的 Free Spire. XLS for Java 包並解壓縮 , 然後從lib文件夾下, 將 Spire. Xls .jar包 導入 到你的Java應用程序中。 ( 導入成功 後 如下圖所示 )
方法二:
通過 Maven倉庫安裝 導入 。 詳細的操作步驟 請參考鏈接 :
https://www.e-iceblue.cn/licensing/install-spirepdf-for-java-from-maven-repository.html
Java代碼示例
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("B1:D11");
PivotCache cache = workbook.getPivotCaches().add(dataRange);
//使用緩存創建數據透視表,並指定透視表的名稱以及在工作表中的位置
PivotTable pt = sheet.getPivotTables().add("Pivot Table", sheet.getCellRange("F4"), cache);
//添加行字段
PivotField pf=null;
if (pt.getPivotFields().get("區域") instanceof PivotField){
pf= (PivotField) pt.getPivotFields().get("區域");
}
pf.setAxis(AxisTypes.Row);
PivotField pf2 =null;
if (pt.getPivotFields().get("商品") instanceof PivotField){
pf2= (PivotField) pt.getPivotFields().get("商品");
}
pf2.setAxis(AxisTypes.Row);
//添加值字段
pt.getDataFields().add(pt.getPivotFields().get("金額"), "求和項:金額", SubtotalTypes.Sum);
//設置透視表樣式
pt.setBuiltInStyle(PivotBuiltInStyles.PivotStyleMedium12);
//保存文檔
workbook.saveToFile("透視表.xlsx", ExcelVersion.Version2013);
}
}
該代碼演示的是彙總 每個區域 中 各種商品銷售的金額 ,生成的透視表如下圖 :