相关学习推荐: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))
登录后复制
公式的意思是先把各个单元格中的字符连接到一起,然后将每个间隔符“顿号”都替换成199个空格,这样就相当于拉大了各个姓名之间的间隔距离(和做核酸类似,越远越好~~)
然后使用MID函数在第1、第199、第398……个字符处,提取出199个字符。这些字符是包含姓名和多余空格的,所以最后用TRIM函数去掉多余空格。
这个公式的缺点就是太长了,数据行数多了还可能会出问题,优点是可以在任意Excel版本中使用。
近代青年:
单击数据区域任意单元格,在【数据】选项卡下单击【来自表格/区域】,将数据加载到数据查询编辑器里。
右键删除部门列(如有需要可保留)。
单击姓名列,选择【拆分列】→【按分隔符】,此时Excel会自动分析咱们的数据,并给出拆分建议。
选择【高级选项】→【拆分到行】
最后【关闭并上载】到工作表里。
此方法适合在Excel 2016及以上版本中使用,使用2010、2013版本的小伙伴,通过安装Power Query插件也可以实现。
现代青年:
D2单元格输入以下公式,按回车:
=TEXTSPLIT(CONCAT(B2:B9&"、"),,"、")
登录后复制
这个公式简单明了,而且运算效率高。美中不足的是目前仅允许安装了Office 365并且加入Office 预览体验计划的小伙伴使用。
TEXTSPLIT函数的作用是按照特定的分隔符拆分字符串。
写法是这样的:
TEXTSPLIT(文本,列分隔符,[行分隔符],[是否忽略空值],[填充文本])。
本例中省略了最后两个参数。
先使用CONCAT(B2:B9&”、”),把B2:B9单元格的内容连接到一起,每个单元格之间用逗号隔开,得到的结果作为待拆分的字符串。
然后使用TEXTSPLIT函数将连接后的字符串按顿号拆分成一列显示。
如果希望将数据拆分成一行显示,公式可以换成这样:
=TEXTSPLIT(CONCAT(B2:B9&"、"),"、")
登录后复制
相关学习推荐:excel教程
以上就是实例解析Excel:把混合在同一单元格中的姓名拆分成一列的详细内容,更多请关注php中文网其它相关文章!