

1. 构建筛选器内容

2. 插入"组合框"控件,并进行相应设置


3. 设置公式,获取筛选器所选择的值
= INDEX(Z1:Z2,W1)

4. 对筛选索引值(W1),筛选内容(X1)定义名称

5. 导入原始表

6.获取筛选索引值
维度索引 = Excel.CurrentWorkbook(){[Name="idx"]}[Content][Column1]{0} - 1

7. 获取筛选内容
dept = Excel.CurrentWorkbook(){[Name="dept"]}[Content][Column1]{0}

8. 分组汇总
8.1 按筛选索引分组(主逻辑)
分组汇总 = Table.Group(更改的类型,
"部门职位", //按部门职位字段分组
{"xx",each _}, //汇总后不做任何操作
1, // 全局模式
(x,y) => Comparer.OrdinalIgnoreCase(Text.Split(x,"_"){维度索引} , Text.Split(y,"_"){维度索引}))

8.2 分组汇总细节构建
分组汇总 = Table.Group(更改的类型,
"部门职位",
{"xx",each
Table.ReorderColumns( //数据位置重排
#table({"部门职位","人数",dept},{{null,null,Text.Split(_[部门职位]{0},"_"){维度索引}}}) //拼接部门行
& Table.AddColumn(_,dept,each null) //增加统计维度列
& #table({"部门职位","人数",dept},{{"小计",List.Sum(_[人数]),null}}), //拼接小计行
{dept,"部门职位","人数"}
)
},
1,
(x,y) => Comparer.OrdinalIgnoreCase(Text.Split(x,"_"){维度索引} , Text.Split(y,"_"){维度索引}))[xx] //深化处理后的列

合并表 = Table.Combine(分组汇总)

10.发布上载至页面