首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用另一个工作簿作为数据源创建Apache POI Pivot?

Apache POI是一个用于操作Microsoft Office格式文件的Java库。它提供了创建、读取和修改Excel文件的功能。在使用Apache POI创建Pivot表时,可以使用另一个工作簿作为数据源。

下面是使用另一个工作簿作为数据源创建Apache POI Pivot的步骤:

  1. 导入Apache POI库的依赖。你可以在项目的构建文件(如Maven的pom.xml)中添加以下依赖项:
代码语言:txt
复制
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi</artifactId>
    <version>4.1.2</version>
</dependency>
<dependency>
    <groupId>org.apache.poi</groupId>
    <artifactId>poi-ooxml</artifactId>
    <version>4.1.2</version>
</dependency>
  1. 创建一个新的工作簿对象,并加载数据源工作簿。你可以使用WorkbookFactory.create()方法来加载工作簿文件。
代码语言:txt
复制
Workbook sourceWorkbook = WorkbookFactory.create(new File("path/to/source/workbook.xlsx"));
  1. 获取数据源工作簿中的数据表。你可以使用getSheet()方法来获取工作簿中的工作表。
代码语言:txt
复制
Sheet sourceSheet = sourceWorkbook.getSheet("Sheet1");
  1. 创建一个新的目标工作簿,并在其中创建一个新的工作表。
代码语言:txt
复制
Workbook targetWorkbook = new XSSFWorkbook();
Sheet targetSheet = targetWorkbook.createSheet("Pivot");
  1. 将数据源工作簿中的数据复制到目标工作簿中的工作表中。你可以使用getRow()getCell()方法来获取单元格,并使用setCellValue()方法来设置单元格的值。
代码语言:txt
复制
for (Row sourceRow : sourceSheet) {
    Row targetRow = targetSheet.createRow(sourceRow.getRowNum());
    for (Cell sourceCell : sourceRow) {
        Cell targetCell = targetRow.createCell(sourceCell.getColumnIndex());
        targetCell.setCellValue(sourceCell.getStringCellValue());
    }
}
  1. 创建一个新的Pivot表,并设置其数据源范围。
代码语言:txt
复制
AreaReference sourceData = new AreaReference("Pivot!$A$1:$D$10", SpreadsheetVersion.EXCEL2007);
PivotTable pivotTable = targetSheet.createPivotTable(sourceData, new CellReference("A1"));
  1. 设置Pivot表的行、列和值字段。你可以使用addRowLabel()addColumnLabel()addDataColumn()方法来添加字段。
代码语言:txt
复制
pivotTable.addRowLabel(0); // 第一列作为行字段
pivotTable.addColumnLabel(DataConsolidateFunction.SUM, 1); // 第二列作为值字段(求和)
pivotTable.addColumnLabel(DataConsolidateFunction.AVERAGE, 2); // 第三列作为值字段(平均值)
  1. 保存目标工作簿到文件。
代码语言:txt
复制
targetWorkbook.write(new FileOutputStream("path/to/target/workbook.xlsx"));
targetWorkbook.close();

通过以上步骤,你可以使用另一个工作簿作为数据源创建Apache POI Pivot。请注意,这只是一个简单的示例,实际应用中可能需要根据具体需求进行适当的调整。

腾讯云相关产品和产品介绍链接地址:

请注意,以上提到的腾讯云产品仅作为示例,你可以根据实际需求选择适合的产品。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Power Query 真经 - 第 4 章 - 在 Excel 和 Power BI 之间迁移查询

这有可能是将查询从一个 Excel 工作簿中复制到另一个 Excel 工作簿中,从 Excel 复制到 Power BI,或者从 Power BI 复制到 Excel。...保存工作簿。 【注意】 此时用户通常不需要执行上述步骤,因为用户很可能已经在本机电脑上使用了可以访问的数据源建立了查询。...4.1.1 Excel 到 Excel 将从最简单的场景开始:将一个查询从一个 Excel 工作簿复制到另一个 Excel 工作簿。...关闭为前面的例子所创建的新工作簿。 打开 Power BI。 返回到 Excel 中的查询链工作簿。...【注意】 实际工作中,不会将 Excel 中的表作为数据库且不再更新,不仅导入时会限制大小,又无法很好地处理。出于这个原因,建议用户尽量少使用这个功能。

7.7K20
  • 一小时教你轻松学会使用Java 整合 Easy Excel 操作 Excel 文件

    文章目录 一、Apache POI简介 二、POI操作Excel 构建maven项目导入依赖 使用POI实现基本写操作 使用POI实现大数据量写操作 使用POI实现基本读操作 使用POI读取不同类型的数据...三、Easy Excel简介 构建maven项目导入依赖 实现写操作 实现读操作 目前市面上比较流行的操作Excel 文件工具大致有两个,一个是Apache POI另一个是阿里的Easy Excel..."; @Test public void testWrite03() throws Exception { // 1.创建一个工作簿 Workbook...(); // 1.创建一个工作簿 Workbook workbook = new HSSFWorkbook(); // 2.创建一个工作表...学生统计03.xls"); // 1.创建一个工作簿 Workbook workbook = new HSSFWorkbook(inputStream);

    1.4K30

    数据驱动框架(Apache POI – Excel)

    我们可以将数据保留在excel工作表中,并在测试脚本中使用它们。让我们看看如何通过从Excel文件读取测试数据来创建数据驱动的UI自动化框架。...如何使用Apache POI在Selenium中创建数据驱动框架?...从Selenium中的Excel中 读取和写入数据”中学到了如何使用Apache POI在Excel文件中读取和写入数据,然后将与测试数据相同的数据集传递给Selenium测试。...此外,从文件读取/写入数据的操作应分开进行,并且可以作为实用程序使用。 请按照下面提到的步骤创建一个基本的数据驱动框架,该框架将用于自动执行“学生注册表“。...该类的代码如下: import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFRow;

    27210

    零售周报、月报一劳永逸、一网打尽!

    答案还是:有的 举个简化的例子: 假设我们前期有以下3个月的销售数据,这些数据放在一个文件夹里: 每个工作簿的数据格式如下: 我们得到了如下报表: 现在的问题是,我们又有了4月份的销售数据,如何快速的添加到该报表中...很简单,把4月份的工作簿甩进以上“数据源”文件夹中,刷新就好了(gif演示): 那么这一切事如何实现的?...这其实借助了微软Power BI系列组件之Power Query及Power Pivot Power Query用来数据处理-此处将以上分布在各个工作簿中的数据源聚合起来 Power Pivot用来建立模型...-此处将聚合的数据进行透视 (注:这两个功能作为Excel插件, 2016版内置; 2013版Power Query请到微软官网下载,Power Pivot内置; 13版以下的Office版本不建议再使用了...; 此处以13版演示,16版路径略有不同) 操作步骤如下: 1 将数据源放置在同一工作簿中,新建一个需要建立报表的工作簿 2 打开新建的工作簿,点击Power Query-从文件-从文件夹,选择数据源所在的路径

    1.1K20

    【在线教育】POI入门

    xls 文件读操作 3.2.5 xlsx 文件读操作 3.2.6 读取不同类型的数据 3.POI入门(了解) 3.1 POI 概述 3.1.1 简介 Apache POIApache软件基金会的开放源码函式库...:一个excel文件,就是一个工作簿 工作表:一个工作簿中,可以所有多个工作表Sheet 行:每一个工作表,包含多行row 单元格:每行有多个单元格Cell组成。...Excel 工作簿        Workbook workbook = new HSSFWorkbook(); ​        // 在Excel工作簿中建一工作表,其名为缺省值 Sheet0...org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook...Excel 工作簿        Workbook workbook = new XSSFWorkbook(); ​        // 在Excel工作簿中建一工作表,其名为缺省值 Sheet0

    1.3K30

    Excel表格的写入读取

    我们要知道一个Excel文件(工作簿)包含三部分,分别是工作表(sheet),行(row),列(cell) 工作簿 工作簿对应的类是 XSSFWorkbook(2007之后),在2007之前对应的类是...) 创建一个工作簿,用于读取文件 常用的方法 XSSFFont createFont() 返回一个XSSFont类的对象,主要用于设置字体用的 XSSFSheet createSheet(...(); //创建工作簿 .....省略写入的内容 FileOutputStream out=new FileOutputStream("D:\\demo1.xlsx"); //创建输出流 book.write...一般工作表都是在工作簿基础上创建的,因此构造函数也用不到,所以这里就不多说了 常用方法 int addMergedRegion(CellRangeAddress region) 合并单元格...org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook

    1.3K20

    Apache POI使用详解

    一 :简介 开发中经常会设计到excel的处理,如导出Excel,导入Excel到数据库中,操作Excel目前有两个框架,一个是apachepoi另一个是 Java Excel Apache...官方主页: http://poi.apache.org/index.html API文档: http://poi.apache.org/apidocs/index.html Java Excel...由于apache poi 在项目中用的比较多,本篇博客只讲解apache poi,不讲jxl 二:Apache POI常用的类 HSSF - 提供读写Microsoft Excel XLS格式档案的功能...常用的类和方法 HSSFWorkbook :工作簿,代表一个excel的整个文档 HSSFWorkbook(); // 创建一个新的工作簿 HSSFWorkbook(InputStream inputStream...); // 创建一个关联输入流的工作簿,可以将一个excel文件封装成工作簿 HSSFSheet createSheet(String sheetname); 创建一个新的Sheet HSSFSheet

    4.1K10

    字段变化引发的Power Pivot导入数据问题

    使用Excel Power Pivot制造超级透视表的时候,很多人喜欢将外部数据直接导入Power Pivot,而不是使用Power Query预处理一番。...理由是:数据源已经非常规范了,无需额外处理。 例如,我们有如下店铺资料工作簿,另外有个进行数据分析的工作簿,需要将店铺资料导入。...打开数据分析工作簿Power Pivot后台,选择“从其他源”-“Excel文件”: 选择准备好的店铺资料表,并勾选“将第一行作为列标题”。...数据顺利的导入到了Power Pivot中: 看上去一切顺利,直到有一天,你的数据源因为各种原因需要变更字段。...再次刷新Power Pivot,会发生什么?系统报错,无法正常刷新: 这是因为原模型中的“开业日期”已经不存在,Power Pivot无法从数据源获取该字段。

    1.4K30

    字段变化引起的Power Pivot故障

    使用Excel Power Pivot制作超级透视表的时候,很多人喜欢将外部数据直接导入Power Pivot,而不是使用Power Query预处理一番。...理由是:数据源已经非常规范了,无需额外处理。 例如,有如下店铺资料工作簿,另外有个进行数据分析的工作簿,需要将店铺资料导入。...打开数据分析工作簿Power Pivot后台,选择“从其他源”-“Excel文件”: 选择准备好的店铺资料表,并勾选“将第一行作为列标题”。...数据顺利的导入到了Power Pivot中: 看上去一切顺利,直到有一天,你的数据源因为各种原因需要变更字段。 1....再次刷新Power Pivot,会发生什么?系统报错,无法正常刷新: 这是因为原模型中的“开业日期”已经不存在,Power Pivot无法从数据源获取该字段。

    20210
    领券