[]
Iterable<IPivotField>IPivotField 对象集合。使用此集合可以访问、添加和移除数据透视表的计算字段。集合中的每一项表示数据透视表报表中定义的一个计算字段。
worksheet.getRange("A1:B4").setValue(new Object[][] {
{"Product", "Amount"},
{"Apple", 120},
{"Orange", 90},
{"Apple", 80}
});
IPivotCache pivotCache = workbook.getPivotCaches().create(worksheet.getRange("A1:B4"));
IPivotTable pivotTable = worksheet.getPivotTables().add(pivotCache, worksheet.getRange("D1"), "SalesPivot");
ICalculatedFields calculatedFields = pivotTable.getCalculatedFields();
calculatedFields.add("DoubleAmount", "=Amount*2");
IPivotField 对象。get(int index) intgetCount()voidforEach, iterator, spliterator此方法返回数据透视表报表中由 IPivotTable.getCalculatedFields() 返回的集合内的计算字段数量。
Object[][] sourceData = {
{"Product", "Amount"},
{"Apple", 100},
{"Pear", 200}
};
worksheet.getRange("A1:B3").setValue(sourceData);
IPivotCache pivotCache = workbook.getPivotCaches().create(worksheet.getRange("A1:B3"));
IPivotTable pivotTable = worksheet.getPivotTables().add(pivotCache, worksheet.getRange("D1"), "PivotTable1");
pivotTable.getCalculatedFields().add("Tax", "=Amount*0.1");
int count = pivotTable.getCalculatedFields().getCount();
使用此方法可以从 IPivotTable.getCalculatedFields() 返回的集合中检索计算字段。
worksheet.getRange("A1:B3").setValue(new Object[][] {
{"Product", "Amount"},
{"Bike", 100},
{"Bike", 200}
});
IPivotCache pivotCache = workbook.getPivotCaches().create(worksheet.getRange("A1:B3"));
IPivotTable pivotTable = worksheet.getPivotTables().add(pivotCache, worksheet.getRange("D1"));
pivotTable.getCalculatedFields().add("Tax", "=Amount*0.1");
IPivotField field = pivotTable.getCalculatedFields().get(0);
index - 计算字段的索引。使用此方法可以从 IPivotTable.getCalculatedFields() 返回的集合中检索计算字段。
worksheet.getRange("A1:B4").setValue(new Object[][] {
{"Product", "Amount"},
{"Apple", 120},
{"Orange", 90},
{"Apple", 80}
});
IPivotCache pivotCache = workbook.getPivotCaches().create(worksheet.getRange("A1:B4"));
IPivotTable pivotTable = worksheet.getPivotTables().add(pivotCache, worksheet.getRange("D1"));
pivotTable.getCalculatedFields().add("Tax", "=Amount*0.1");
IPivotField field = pivotTable.getCalculatedFields().get("Tax");
fieldName - 要检索的计算字段的名称。IllegalArgumentException - 如果没有计算字段与 fieldName 匹配。IPivotField 对象。当内置汇总函数不足以满足需要时,使用此方法可以向数据透视表添加基于自定义公式的字段。该公式对应于所创建字段的 IPivotField.getFormula() 值。
worksheet.getRange("A1:B4").setValue(new Object[][] {
{"Product", "Amount"},
{"A", 1200},
{"B", 800},
{"A", 600}
});
IPivotCache pivotCache = workbook.getPivotCaches().create(worksheet.getRange("A1:B4"));
IPivotTable pivotTable = worksheet.getPivotTables().add(pivotCache, worksheet.getRange("D1"));
IPivotField calculatedField = pivotTable.getCalculatedFields().add("Tax", "=IF(Amount > 1000, 3% * Amount, 0)");
calculatedField.setOrientation(PivotFieldOrientation.DataField);
Name - 计算字段的名称。Formula - 计算字段的公式。使用此方法可以从数据透视表的计算字段集合中删除计算字段。
worksheet.getRange("A1:B3").setValue(new Object[][] {
{"Product", "Amount"},
{"Apple", 100},
{"Orange", 200}
});
IPivotCache pivotCache = workbook.getPivotCaches().create(worksheet.getRange("A1:B3"));
IPivotTable pivotTable = worksheet.getPivotTables().add(pivotCache, worksheet.getRange("D1"), "pivotTable1");
pivotTable.getCalculatedFields().add("Tax", "=Amount*0.1");
pivotTable.getCalculatedFields().remove("Tax");
fieldName - 要移除的计算字段的名称。