拆分单元格内容成多行的更简单方法——动态数组法
作者:ITFANS来源:部落窝教育发布时间:2024-01-30 17:08:32点击:1035
曾介绍用PQ、空格替换、TEXTSPLIT函数等3种方法拆分单元格内容成多行显示。今天推荐大家用更简单的动态数组函数,以及更简单的LAMBDA自定义函数来拆分,不用计算人数。
小美在工作微信里经常会收到如下图左侧的已整理合并的员工信息,但为了方便统计,需要将其拆分为右侧的格式。
这是一个典型的同类项拆分操作,将同一部门信息按人数拆分为多条,每条只记录一名员工。
在《批量拆分单元格内容为多行显示》教程中我们介绍了含PQ、空格替换在内的3种方法,今天推荐用动态数组函数、自定义函数来更快完成。
Step1 拆分数据到多列
将微信信息复制到A列,在D2输入公式“=IFERROR(TEXTSPLIT(A2,{":",",","、"}),"")”并向下填充。
解释:
使用TEXTSPLIT函数分离文本。因为原始数据有多个符号,所以使用{":",",","、"}作为分隔依据。
Step2 填充部门
有多少名员工就要填充多少个部门名称。在B2中输入公式“=TOCOL(IF(E2:M10<>"",D2:D10,NA()),2)”即可。
解释:
1.使用IF函数对拆分出来的E2:M10进行判断,如果不为空,则显示D2:D10中的部门名称,否则显示为#N/A错误值。
2.使用动态数组函数TOCOL在忽略错误值后将部门连接成一列。
Step3 填充员工
在C2中输公式“=TOCOL(E2:M10,1)”将员工显示为一列。参数“1”表示忽略空单元格。
拆分完成!
如果经常做类似拆分,可以隐藏D:M列进行保存,以后只要将微信数据粘贴到A列,即可自动完成拆分。
福利
赠送大家一个一步到位的自定义拆分函数。
在定义名称对话框中,名称设为“chaifen”,在引用位置中输入如下公式:
=LAMBDA(字符,LET(cai,TEXTSPLIT(TEXTJOIN(";",1,字符),{":","、",","},";"),CHOOSE({1,2},TOCOL(IF(ISERROR
(DROP(cai,,1)),NA(),TAKE(cai,,1)),2,),TOCOL(DROP(cai,,1),2,))))
在B13中输入自定义函数公式“=chaifen(A2:A4)”即可。
本文配套的练习课件请添加客服微信buluowojiaoyu索取。
做Excel高手,快速提升工作效率,部落窝教育Excel精品好课任你选择!
扫下方二维码关注公众号,可随时随地学习Excel:
相关推荐:
版权申明:
本文作者ITFANS;部落窝教育享有稿件专有使用权。若需转载请联系部落窝教育。