[]
在分析电子表格数据时,您可能希望比较集计的结果,而不是比较原始数据中精确的值。例如,有很多方法可以评估销售员工的绩效。您可以将他的销售额与目标、销售额占总销售额的百分比或销售额与上个月的销售额等进行比较。为了方便地实现这些计算,GcExcel提供了“显示值为...”选项,允许您使用多个预定义公式(如母公司总销售额的百分比或总销售额的百分比)在数据透视表中执行自定义计算。
GcExcel Java 提供 IPivotField 接口的setCalculation 方法,该接口接受来自 PivotFieldCalculation 枚举的值,用于设置预定义的计算。还可以设置“基本字段”和“基本字段”项,以分别使用 setBaseField 和 setBaseItem 方法执行这些计算。
请参考以下示例代码,该代码以澳大利亚字段的百分比表示值。
IPivotTable percentOfTable = percentOfSheet.getPivotTables().add(pivotCache, percentOfSheet.getRange("A1"));
percentOfTable.getPivotFields().get("Category").setOrientation(PivotFieldOrientation.RowField);
percentOfTable.getPivotFields().get("Product").setOrientation(PivotFieldOrientation.RowField);
percentOfTable.getPivotFields().get("Country").setOrientation(PivotFieldOrientation.ColumnField);
percentOfTable.getPivotFields().get("Amount").setOrientation(PivotFieldOrientation.DataField);
// set show value as, base field, base item.
IPivotField percentOfTableDataField = percentOfTable.getDataFields().get("Sum of Amount");
percentOfTableDataField.setCalculation(PivotFieldCalculation.PercentOf);
percentOfTableDataField.setBaseField("Country");
percentOfTableDataField.setBaseItem("Australia");
percentOfSheet.getRange("A:I").autoFit();