如何在Excel数据透视表中动态折叠所有项?Automate录制失效求方案
如何在Excel Automate中批量展开/折叠数据透视表的所有项?
你可以通过遍历数据透视表字段下的所有透视项集合,动态设置展开/折叠状态,无需硬编码单个项名称。
批量折叠指定字段的所有项
如果只需要处理单个层级字段(比如你的例子里的"Region"),用这段代码:
// 获取"Region"层级下的目标字段 const targetField = newPivotTable.getHierarchy("Region").getFields()[0]; // 遍历所有透视项,批量设置为折叠状态 targetField.getPivotItems().forEach(item => { item.setIsExpanded(false); });
批量处理数据透视表的所有字段
如果要一次性处理数据透视表中所有层级的所有字段,用这段循环嵌套的代码:
// 遍历数据透视表的所有层级 newPivotTable.getHierarchies().forEach(hierarchy => { // 遍历当前层级下的所有字段 hierarchy.getFields().forEach(field => { // 遍历字段下的所有透视项,统一设置折叠状态 field.getPivotItems().forEach(item => { item.setIsExpanded(false); }); }); });
切换为展开状态
只需要把代码中的false替换成true,就能实现批量展开所有项。
内容的提问来源于stack exchange,提问作者Deb
相关产品推荐
相关产品推荐

