zoukankan      html  css  js  c++  java
  • Java 创建 Excel 数据透视表

    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);
        }
    }

    该代码演示的是汇总每个区域中各种商品销售的金额,生成的透视表如下图:

  • 相关阅读:
    iOSS--生成有logo的二维码
    inux网卡与MAC地址绑定方法总结
    Linux--多网卡的7种Bond模式
    Arp攻击实战
    5款免费Windows远程连接Linux桌面软件(VNC客户端)
    DenyHosts安装及配置
    Cacti完全使用手册 ( 让你快速个性化使用Cacti )
    解除被DenyHosts锁定的IP地址
    linux防止sshd被爆破(安装denyhosts)
    实现水电气一卡通 IC卡扇区分配
  • 原文地址:https://www.cnblogs.com/jazz-z/p/12787057.html
Copyright © 2011-2022 走看看