【WPS】【EXCEL】将单元格中字符按照分隔符拆分按行填充到其他单元格

问题:实现如下图的效果


解答:

一、函数

vbscript 复制代码
=IFERROR(TRIM(MID(SUBSTITUTE($A$2,",",REPT(" ",LEN($A$2))),(ROW(A1)-1)*LEN($A$2)+1,LEN($A$2))),"")

二、在单元格C2中填写如下函数

三、全选要填充的单元格并且按CTRL+D

函数解析:

1. SUBSTITUTE函数

  • 语法SUBSTITUTE(text, old_text, new_text, [instance_num])

  • 作用:用于将文本字符串中的部分文本替换为新的文本内容。

  • 在本公式中的应用SUBSTITUTE($A$2,",",REPT(" ",LEN($A$2)))这部分里,$A$2表示要处理的文本所在单元格(这里就是存放"晓妍,宇轩,晨晨,子涵"的单元格),","表示要被替换掉的旧文本,也就是逗号,REPT(" ",LEN($A$2))是用来生成替换内容的。REPT函数会按照指定的次数重复文本,这里REPT(" ",LEN($A$2))的意思是重复空格,重复的次数等于A2单元格文本的长度(通过LEN($A$2)获取长度值)。整体上就是把A2单元格文本里的逗号都替换成和原文本长度一样数量的空格,例如原文本长度为15个字符,就把逗号替换成15个空格,目的是为后续按固定长度提取名字做准备,让每个名字之间间隔足够大,便于区分。

2. MID函数

  • 语法MID(text, start_num, num_chars)

  • 作用:从一个文本字符串中截取出指定起始位置以及指定数量字符的部分文本。

  • 在本公式中的应用MID(SUBSTITUTE($A$2,",",REPT(" ",LEN($A$2))), (ROW(A1)-1)*LEN($A$2)+1, LEN($A$2)),前面SUBSTITUTE函数处理后的结果作为MID函数要截取的文本来源,(ROW(A1)-1)*LEN($A$2)+1用来确定每次截取的起始位置,ROW(A1)返回的是当前行号(当公式在C2单元格时,ROW(A1)返回1 ,随着公式向下拖动到C3、C4等单元格时,ROW函数返回的值会相应变成2、3等),乘以LEN($A$2)(也就是原文本长度)再加1,就可以按原文本长度的间隔依次往后确定起始位置,LEN($A$2)作为第三个参数表示每次截取的字符数量就是原文本长度这么多个,这样就能依次把替换逗号为空格后的每个名字所在部分截取出来了。

3. TRIM函数

  • 语法TRIM(text)

  • 作用:去除文本前后多余的空格,使文本更整洁规范地显示。

  • 在本公式中的应用 :因为前面通过SUBSTITUTEMID函数操作后,截取出来的名字部分前后可能带有多余的空格,所以用TRIM函数对截取到的内容进行处理,去掉那些多余空格,得到干净的名字文本。

4. IFERROR函数

  • 语法IFERROR(value, value_if_error)

  • 作用 :如果表达式value的计算结果为错误(比如公式运算出现错误情况,像原文本不符合预期格式等导致前面函数无法正确提取等情况),则返回value_if_error指定的值,否则返回value本身的值。

  • 在本公式中的应用 :在这里整个公式外面套上IFERROR函数,并且value_if_error设置为""(空文本),就是为了避免前面函数在某些特殊情况下出现错误值而影响最终显示效果,让出现错误时直接显示为空文本,保证填充到单元格里的数据是正常名字或者为空的较规范的状态。

相关推荐
未来之窗软件服务11 小时前
万象EXCEL开发(十一)excel 结构化查询 ——东方仙盟金丹期
excel·仙盟创梦ide·东方仙盟·万象excel
爱上妖精的尾巴1 天前
5-20 WPS JS宏 every与some数组的[与或]迭代(数组的逻辑判断)
开发语言·前端·javascript·wps·js宏·jsa
未来之窗软件服务2 天前
万象EXCEL开发(十)excel 高级混合查询 ——东方仙盟金丹期
excel·仙盟创梦ide·东方仙盟·万象excel
njsgcs2 天前
excel-mcp-server 安装
excel·mcp
未来之窗软件服务2 天前
万象EXCEL开发(九)excel 高级混合查询 ——东方仙盟金丹期
大数据·excel·仙盟创梦ide·东方仙盟·万象excel
深耕AI应用2 天前
元表纪基于一个Excel表实现一键发货、打印面单
excel·表格一键发货·自动打印运单·自动打印面单·自动发货
专注VB编程开发20年2 天前
EXCEL VBA-从X行复制数据插入到Y_Z行
excel·复制数据·vba·插入数据·函数优化
小Tomkk2 天前
一个学校随机点名系统(代excel 自定义导入名字,+随机点名)
excel
揭老师高效办公3 天前
Word和WPS文字如何从特定的页开始编号(页码)?
word·wps
未来之窗软件服务3 天前
万象EXCEL开发(十二)excel 结构化查询 ——东方仙盟金丹期
excel·仙盟创梦ide·东方仙盟·万象excel