默认情况下,源数据的更改变动不会自动更新到透视表,需要在透视表上进行刷新才能显示最新数据变化。下面通过使用spire.xls for java来展示如何刷新透视表。
import com.spire.xls.*;
public class refreshpivottable {
public static void main(string[] args) {
//创建实例,加载excel
workbook wb = new workbook();
wb.loadfromfile("数据透视表.xlsx");
//获取第一个工作表
worksheet sheet = wb.getworksheets().get(0);
//更改透视表的数据源数据
sheet.getcellrange("c2:c4").settext("产品a");
sheet.getcellrange("c5:c7").settext("产品b");
sheet.getcellrange("c8:c10").settext("产品c");
//获取透视表,刷新数据
pivottable pivottable = (pivottable) sheet.getpivottables().get(0);
pivottable.getcache().isrefreshonload();
//保存文档
wb.savetofile("刷新透视表.xlsx",fileformat.version2013);
}
}
透视表更新前后效果: