分享

超实用的Excel拆分同类项的两种方法,快快来学习吧

 昵称58195209 2022-02-13
文章图片1

不熟悉的可以看下之前的文章:

Excel使用Vlookup函数实现相同类别的文本合并,你知道怎么做的吗

那如果我们想把合并的同类项再拆分回原来的样式,就如下图所示,那又要怎么实现呢?

文章图片2

下面给大家介绍几种实现这种拆分同类项的额方法:

方法一、 分列法

1、首先选中C列数据,点击数据分列,【分隔符号】选择【其他】,输入顿号'、'

文章图片3

2、在C7单元格输入=D2,向右填充至数据最右侧,再下拉至显示数据均为0值时结束,选中B2:B6区域,双击下方的黑色十字,双击填充。

文章图片4

3、使用【选择性粘贴】-【值】,把公式全部转化为数据,再删除D:I列

文章图片5

4、把C列显示为0值的数据删除,按Ctrl+G定位,定位条件选择【常量】,勾选【数字】,点击删除,删除整行。

文章图片6

5、这样表格就整理好了,我们可以再跟原表格内容对比下,确认无误。

文章图片7

方法二、函数法

1、首先我们需要先根据C列的人员清单,确认部门数量,我们在E2输入如下公式,下拉填充E2:E6

=REPT(B2&CHAR(10),LEN(C2)-LEN(SUBSTITUTE(C2,'、',''))+1)

最终生成如下样式:

文章图片8

2、复制E2:E6单元格的内容到新建的WORD中,再把Word中的内容复制回E2单元格,可以看到生成的部门行数和人员名单数一致的。

文章图片9

公式解释:

1、SUBSTITUTE(C2,'、','')把C2单元格的顿号'、',替换为空值

2、LEN(SUBSTITUTE(C2,'、','')函数计算替换后的文本长度

3、再通过计算C2整体文本长度,减去计算去掉顿号'、'的长度,再+1,即得到 每个部门的人员数

4、CHAR(10)换行符

5、REPT函数实现根据每个部门人员数,把C2&CHAR(10)重复

比如REPT(A2,5),即把A2重复5次

3、根据部门名称查找人员名单,我们在F2输入如下公式:

=IFERROR(TRIM(MID(SUBSTITUTE(LOOKUP(,0/(B$2:B$6=E2),C$2:C$6),'、',REPT(' ',99)),100*COUNTIF(E$2:E2,E2)-99,100)),'')

文章图片10


公式讲解:

1、COUNTIF(E$2:E2,E2),COUNTIF函数实现条件计数,最终实现的是比如人事部实现从1~7,设计部从1~6

文章图片11

2、REPT(' ',99),REPT函数此处是把空格重复99次

3、LOOKUP(,0/(B$2:B$6=E2),C$2:C$6),实现根据E2单元格的部门把对应的人员名单查询出来

文章图片12

4、SUBSTITUTE(LOOKUP(,0/(B$2:B$6=E2),C$2:C$6),'、',REPT(' ',99))

SUBSTITUTE函数是把G列查询的值间的顿号'、',以99个空格代替

5、使用MID函数依次从1,101,201...开始提取100个数,包含空格

6、最后使用TRIM函数去除空格,即为我们需要的值了。

总结:

以上就是给大家分享的拆分同类项的两种方法,分列法简单且易操作,函数相比较复杂,不好理解,需要多多熟悉验证。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多