powerquery分组_Power Query闪开,好用的Excel合并公式来了

昨天,有人提了一个关于员工生日的难题:

其实,如果不要求姓名合并,用数据透视表挺容易实现的:

插入数据透视表 - 对日期进行月、日分组 - 把月拖到筛选标签中 - 添加切片器:月

92657152b1339a2a7085ba0029903d35.gif

但要把同一天过日的员工姓名合并起来,就没那么容易了。小编分享两种高能方法,一种是power Query转换,第二种是用函数公式。

一、使用Power Query

1、效果演示

28c2771c75848c0338b2ec6d7ccdb928.gif

2、制作步骤

选取表格 - 数据 - 自表格/区域 ,启动power Query

a72fcdcf956e7b4e5b648839707963ed.gif

在power Query编辑器中,复制日期列,并分别转换成月和天

9346f2fbfdf4b4aa363817089b57cc3e.gif

再重命名标题为“月份”和“日期”

2366ee0d5743cc7d34bd806f9f521d55.png

分组依据 - 选取高级 - 添加和设置月份日期 为分组项,然后对员工进行求和。

7ea287d54a0ca43cea614bc104ac14c6.png

点击确定后,新生成的列会显示错误结果

13051a85e37ed411e2642d1fac988bb0.png

修改编辑栏中的公式

原公式:

= Table.Group(重命名的列, {"月份", "日期"}, {{"过生日的员工", each List.Sum([员工]), type text}})

修改为:

= Table.Group(重命名的列, {"月份", "日期"}, {"过生日的员工", each Text.Combine([员工],",")})

a9a36cc5797f845016cece84734606a6.png

把powey中的结果导入到表格中,并用数据透视表进行透视:关闭并上传至 -选数据透视表,再添加切片器即可(具体步骤不再详述)

是不是感觉power query步骤很复杂,其实用一个Excel公式即可搞定。

二、使用函数公式

1、效果

可以选取不同的月份,动态生成该月份每一天过生日的名单。

4b0f9b7d4b444c2640acfc8df590dc0d.gif

2、公式

K3公式:

=IFERROR(TEXTJOIN(",",,FILTER(A$2:A326,TEXT(B$2:B326,"m-d")=K$1&"-"&J3)),"")

估计很多新手看不懂公式,小编就简单介绍一下:

  • TEXT(B$2:B326,"m-d") :把B列的日期转成换“月-日”格式和给定的K$1&"-"&J3进行对比,作为filter函数的筛选条件。
  • FILTER(筛选返回区域,条件):office365新增函数,根据条件返回筛选结果
  • TEXTJOIN(连接符,,连接的多个值):office365新增函数,可以用指定的连接符号,把多个值连接成一个。
  • IFERROR(表达式,""):把返回的错误值转换成空
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值