作者:小北童鞋
来源:芒种学院(ID:lazy_info)
各位小伙伴早上好呀,今天小北来和大家分享一组使用频率非常高的数据处理技巧「另类汇总」。
例如下图是某公司部门员工的年终奖记录表:

为了缩减提交报告的长度,我们需要将各个部门的人员和金额进行汇总,将表格转换成这种格式:

乍得一看好像并不是很难,细细一想好像又处理不了,最怕的就是这种尴尬的场景。
因为像这种专门针对文字的汇总,普通的透视表就非常弱了。
本着给大家提升效率的想法,今天小北给大家分享 函数 + PQ 两种快速解决另类汇总的小技巧~
365新函数解决需求
首先是利用函数来解决,这里我们使用了三个365的新函数FILTER、TEXTJOIN和UNIQUE。
FILTER/UNIQUE自然不多说,前面介绍过。
而TEXTJOIN是将传入的数据以某个字符进行合并。
知道了使用什么函数,接下来整理下汇总的思路:
- 部门列使用
UNIQUE进行快速区中; - 姓名列使用
FILTER快速进行筛选; - 配合
TEXTJOIN将筛选的结果快速进行合并; - 年终奖求和使用
SUMIF条件求和函数;
总共有 4 步,首先我们将部门列快速提取去重,输入公式。
=UNIQUE(A2:A17)Code language: Excel (excel)
现在部门的数据就被一键去重提取出来了,操作如下。

接下来在姓名列输入FILTER+TEXTJOIN的组合公式:
=TEXTJOIN("、",TRUE,FILTER($B$2:$B$17,$A$2:$A$17=E2))Code language: Excel (excel)
现在就汇总完姓名列了,操作结果如下。

接下来利用SUMIF函数将所有的年终奖按条件求和即可。

好啦,现在我们就利用函数将这个需求解决了,步骤略多。
不过兼容性并不是很好,如果你使用的并不是365版本。
那么函数有极大的概率会失效,接下来我们看下更简单的方法。
PowerQuery另类汇总
使用PowerQuery来解决这个问题就轻松很多了,首先我们将数据导入到 PQ 编辑器中,如下。

接着我们点击「主页」选项卡下的「分组依据」。
按照如下步骤将部门对姓名、年终奖依次求和。

可以看到「年终奖」的结果计算是正确的。
但是「姓名列」发生了错误,这个时候我们只需要点击「姓名列」。
将List.Sum更改成Text.Combine即可。

现在就轻松搞定这个复杂的需求了,是不是比函数简单太多了。
导出到Excel中的时候,数据如果更新了,直接刷新即可。

是不是非常强呢?这次使用的技巧还是 Text 系列的函数,关于这个函数的其他用法,昨天也分享了一种,可以去看下哦~
好了,那么今天的「PQ另类汇总」技巧就分享到这里了,你学会了么?
© 版权声明
文章版权归作者所有,未经允许请勿转载。





TEXTJOIN那个用法太秀了,我们还在手动合并姓名😂
我们公司还在用2010,学个寂寞
感觉函数套娃有点多,一错就全乱
Text.Combine只能合并文本,数字得转下
要是部门有空值直接报错,烦死了
之前自己写VBA三天,结果人家两分钟搞定
刷新就能更新太香了,就是第一次配好费劲
求问FILTER条件区域到底要不要加$符号啊
这个方法比手动快多了,但电脑卡住就完蛋
公司不让装新插件,想用也用不了😭
这个Text.Combine太省事了
PQ那个分组功能藏得挺深
我也是找了半天才找到
PQ分组后改Text.Combine就行?学到了这招!
365函数是方便,但公司电脑卡在2016版真的哭死
2016版哭着退出群聊,我们连FILTER都没有😭
这方法可以试试
FILTER那个筛选条件怎么写?
之前手动合并搞了半天,原来有现成的😂
公司还在用2010版,看来是没戏了
PQ分组那步操作有详细点的教程吗?
TEXTJOIN这个函数挺实用的
合并数据时经常用
看着挺实用,mark一下
感觉365版确实方便不少
PQ分组这里改一下函数就搞定了,比函数简单
我也是用PQ搞定这个的
Text.Combine是不是只能合并文本?
对,Text.Combine只能合并文本,数字得用List.Sum再转文本
之前都是手动合并,这方法省事多了
PQ这个分组操作有点东西,回头试试
用PQ刷新确实省事多了
分组依据那里点错了好几次才成功
分组依据那个按钮藏得也太深了吧,点了好几次才找到…
365版本的这几个新函数还挺实用
Text.Combine这操作挺溜的
PQ这招真香,刷新一下全更新了,省得天天复制粘贴
手动合并的时候还特意加顿号,结果白忙活了😂
每次用旧版本都头疼兼容问题
PQ处理这种问题确实方便多了
我也觉得,上手快多了
TEXTJOIN还能这么玩?我之前只拿它拼路径…
公司要是不升级版本,学再多也没用啊
这个汇总方法比VBA还快,可以偷懒了
求问如果部门有空值会出错吗?