实例解析Excel:把混合在同一单元格中的姓名拆分成一列

时间:2022-12-04
阅读:

如何把混合在同一单元格中的姓名拆分成一列。

先看数据源和最终效果:

实例解析Excel:把混合在同一单元格中的姓名拆分成一列

远古青年:

D2单元格输入公式,下拉到出现空白为止。

太长了,左右拖动滑块,可查看完整公式~~

=TRIM(MID(SUBSTITUTE(B$2&"、"&B$3&"、"&B$4&"、"&B$5&"、"&B$6&"、"&B$7&"、"&B$8&"、"&B$9,"、",REPT(" ",199)),ROW(A1)*199-198,199))

实例解析Excel:把混合在同一单元格中的姓名拆分成一列

公式的意思是先把各个单元格中的字符连接到一起,然后将每个间隔符“顿号”都替换成199个空格,这样就相当于拉大了各个姓名之间的间隔距离(和做核酸类似,越远越好~~)

然后使用MID函数在第1、第199、第398……个字符处,提取出199个字符。这些字符是包含姓名和多余空格的,所以最后用TRIM函数去掉多余空格。

这个公式的缺点就是太长了,数据行数多了还可能会出问题,优点是可以在任意Excel版本中使用。

近代青年:

单击数据区域任意单元格,在【数据】选项卡下单击【来自表格/区域】,将数据加载到数据查询编辑器里。

右键删除部门列(如有需要可保留)。

单击姓名列,选择【拆分列】→【按分隔符】,此时Excel会自动分析咱们的数据,并给出拆分建议。

选择【高级选项】→【拆分到行】

最后【关闭并上载】到工作表里。

实例解析Excel:把混合在同一单元格中的姓名拆分成一列

此方法适合在Excel 2016及以上版本中使用,使用2010、2013版本的小伙伴,通过安装Power Query插件也可以实现。

现代青年:

D2单元格输入以下公式,按回车:

=TEXTSPLIT(CONCAT(B2:B9&"、"),,"、")

实例解析Excel:把混合在同一单元格中的姓名拆分成一列

这个公式简单明了,而且运算效率高。美中不足的是目前仅允许安装了Office 365并且加入Office 预览体验计划的小伙伴使用。

TEXTSPLIT函数的作用是按照特定的分隔符拆分字符串。

写法是这样的:

TEXTSPLIT(文本,列分隔符,[行分隔符],[是否忽略空值],[填充文本])。

本例中省略了最后两个参数。

先使用CONCAT(B2:B9&”、”),把B2:B9单元格的内容连接到一起,每个单元格之间用逗号隔开,得到的结果作为待拆分的字符串。

然后使用TEXTSPLIT函数将连接后的字符串按顿号拆分成一列显示。

如果希望将数据拆分成一行显示,公式可以换成这样:

=TEXTSPLIT(CONCAT(B2:B9&"、"),"、")
返回顶部
顶部