ピボットテーブル内のPivot Fieldをグループ化

可能な使用シナリオ

Microsoft Excelでは、ピボットテーブルのピボットフィールドをグループ化することができます。ピボットフィールドに関連するデータが多い場合、それらをセクションにグループ化することはよく行われます。Aspose.CellsもPivotTable.setManualGroupField()メソッドを使用してこの機能を提供しています。

ピボットテーブル内のPivot Fieldをグループ化

以下のサンプルコードは、サンプルExcelファイルを読み込み、ピボットテーブルの最初のピボットフィールドをPivotTable.setManualGroupField()メソッドを使用してグループ化します。その後、ピボットテーブルのデータを更新して計算し、ワークブックを出力Excelファイルとして保存します。スクリーンショットでは、サンプルコードのサンプルExcelファイルへの影響が示されています。スクリーンショットで示されているように、最初のピボットフィールドは現在、月と四半期によるグループ化が行われています。

todo:image_alt_text

サンプルコード

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
//Load sample workbook
Workbook wb = new Workbook("sampleGroupPivotFieldsInPivotTable.xlsx");
//Access the second worksheet
Worksheet ws = wb.getWorksheets().get(1);
//Access the pivot table
PivotTable pt = ws.getPivotTables().get(0);
//Specify the start and end date time
DateTime dtStart = new DateTime(2008, 1, 1);//1-Jan-2018
DateTime dtEnd = new DateTime(2008, 9, 5); //5-Sep-2018
//Specify the group type list, we want to group by months and quarters
int[] groupTypeList = new int[2];
groupTypeList[0] = PivotGroupByType.MONTHS;
groupTypeList[1] = PivotGroupByType.QUARTERS;
//Apply the grouping on the pivot field
PivotField field = pt.getRowFields().get(0);
field.groupBy(dtStart, dtEnd, groupTypeList, 1, true);
//Refresh and calculate pivot table
pt.setRefreshDataFlag(true);
pt.refreshData();
pt.calculateData();
pt.setRefreshDataFlag(false);
//Save the output Excel file
wb.save("outputGroupPivotFieldsInPivotTable.xlsx");