隐藏数据透视表数据!Java版Excel文档处理控件Aspose.Cells这些不得不看的新功能

在最新发布的v19.11中,新增了许多非常有趣且实用的新功能,例如提供基于某些条件的排序和隐藏数据来获取 表和演示的紧凑信息,可以增强数据透视表的处理;使用QueryTable作为数据源读写表;检索OData连接信息等等。接下来我们用示例来演示如何实现这些新功能。

Aspose.Cells for Java是Excel电子表格处理API,开发人员可以在其自己的应用程序中嵌入读取,编写,操作,转换和打印电子表格的功能,而无需Microsoft Excel应用程序。

在最新发布的v19.11中,新增了许多非常有趣且实用的新功能,例如提供基于某些条件的排序和隐藏数据来获取 表和演示的紧凑信息,可以增强数据透视表的处理;使用QueryTable作为数据源读写表;检索OData连接信息等等。接下来我们用示例来演示如何实现这些新功能。

下载最新版Aspose.Cells for Java

是正版Aspose大陆地区正式授权经销商,拥有负责正版Aspose免费试用,咨询,销售等服务,双旦狂欢,Aspose.Total直降10000元,更有iPhone 11/小米音响好礼相赠,点击咨询客服


在数据透视表中排序和隐藏数据

在某些情况下,数据透视表中需要清晰的信息。我们可能需要某些功能来对数据透视表中的数据进行排序,然后根据某些条件隐藏行。以下示例代码演示了此功能:

// The path to the output directory.String sourceDir = Utils.Get_SourceDirectory();String outputDir = Utils.Get_OutputDirectory();Workbook workbook = new Workbook(sourceDir + "PivotTableHideAndSortSample.xlsx");Worksheet worksheet = workbook.getWorksheets().get(0);PivotTable pivotTable = worksheet.getPivotTables().get(0);CellArea dataBodyRange = pivotTable.getDataBodyRange();int currentRow = 3;int rowsUsed = dataBodyRange.EndRow;// Sorting score in descendingPivotField field = pivotTable.getRowFields().get(0);field.setAutoSort(true);field.setAscendSort(false);field.setAutoSortField(0);pivotTable.refreshData();pivotTable.calculateData();// Hiding rows with score less than 60while (currentRow < rowsUsed){    Cell cell = worksheet.getCells().get(currentRow, 1);    double score = (double) cell.getValue();    if (score < 60)    {        worksheet.getCells().hideRow(currentRow);    }    currentRow++;}pivotTable.refreshData();pivotTable.calculateData();// Saving the Excel fileworkbook.save(outputDir + "PivotTableHideAndSort_out.xlsx");

下图显示了对示例数据运行此代码之前和之后的数据透视表。

隐藏数据透视表数据!Java版Excel文档处理控件Aspose.Cells这些不得不看的新功能

查看上述代码片段中使用的源和输出excel文件,请点击这里下载

带有查询表数据源的读写表

具有查询表作为数据源的表非常常见。我们可能需要阅读这些表并进行修改,例如显示总数等。此功能较早可用,但是提供了对XLS文件的支持。以下示例代码读取一个表,然后对其进行更改以在末尾显示总数。

// The path to the output directory.String sourceDir = Utils.Get_SourceDirectory();String outputDir = Utils.Get_OutputDirectory();// Load workbook objectWorkbook workbook = new Workbook(sourceDir + "SampleTableWithQueryTable.xls");Worksheet worksheet = workbook.getWorksheets().get(0);ListObject table = worksheet.getListObjects().get(0);// Check the data source type if it is query tableif (table.getDataSourceType() == TableDataSourceType.QUERY_TABLE){table.setShowTotals(true);}// Save the fileworkbook.save(outputDir + "SampleTableWithQueryTable_out.xls");

下图显示了setShowTotals()函数的工作方式:

隐藏数据透视表数据!Java版Excel文档处理控件Aspose.Cells这些不得不看的新功能

获取OData连接信息

OData可用于从RESTful API获取提要或数据,也可在Excel文件中使用。可以使用Apose.Cells API和Workbook的DataMashup类从Excel文件中检索此信息。从具有PowerQueryFormula和PowerQueryFormulaItem的PowerQueryFormulas属性中获取所需的信息。

// The path to the directories.String sourceDir = Utils.Get_SourceDirectory();Workbook workbook = new Workbook(sourceDir + "ODataSample.xlsx");PowerQueryFormulaCollction PQFcoll = workbook.getDataMashup().getPowerQueryFormulas();for (Object obj : PQFcoll){    PowerQueryFormula PQF = (PowerQueryFormula)obj;    System.out.println("Connection Name: " + PQF.getName());    PowerQueryFormulaItemCollection PQFIcoll = PQF.getPowerQueryFormulaItems();    for (Object obj2 : PQFIcoll)    {        PowerQueryFormulaItem PQFI = (PowerQueryFormulaItem)obj2;        System.out.println("Name: " + PQFI.getName());        System.out.println("Value: " + PQFI.getValue());    }}

下图显示了一个示例文件,该文件在上面的代码示例中用于获取OData连接信息。

隐藏数据透视表数据!Java版Excel文档处理控件Aspose.Cells这些不得不看的新功能

这是使用示例文件的程序输出:

隐藏数据透视表数据!Java版Excel文档处理控件Aspose.Cells这些不得不看的新功能

还想要更多吗可以点击阅读【2019 · Aspose最新资源整合】查找需要的教程资源。如果您有任何疑问或需求,请随时加入Aspose技术交流群,我们很高兴为您提供查询和咨询

标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年11月15日
下一篇 2019年11月15日

相关推荐

发表回复

登录后才能评论