ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
Python自动化办公应用大全 Excel 2021函数公式学习大典 Kutools for Office 套件发布 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: liujunwei4321

[分享] 根据指定字符把单个单元格拆分到多行(公式,辅助列)

[复制链接]

TA的精华主题

TA的得分主题

发表于 2022-10-17 14:32 | 显示全部楼层
  1. =REDUCE(G1:J1,C2:C27,LAMBDA(s,t,VSTACK(s,IFNA(HSTACK(OFFSET(t,,-2,,2),DROP(REDUCE("",TOCOL(TEXTSPLIT(t,";")&","&TEXTSPLIT(OFFSET(t,,1),,";")),LAMBDA(x,y,VSTACK(x,TEXTSPLIT(y,",")))),1)),OFFSET(t,,-2,,2)))))
复制代码
新函数
微信图片_20221017143138.jpg

TA的精华主题

TA的得分主题

发表于 2022-11-1 22:08 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
=LET(a,MMULT(N(ROW($2:$8)>COLUMN($A:$G)),LEN($C$2:$C$8)-LEN(SUBSTITUTE($C$2:$C$8,";",))+1),SWITCH({1,2,3},1,XLOOKUP(SEQUENCE(MAX(a)),a,A2:A8,"",1,-1),2,XLOOKUP(SEQUENCE(MAX(a)),a,B2:B8,"",1,-1),3,TRANSPOSE(TEXTSPLIT(TEXTJOIN(";",1,C2:C8),";"))))

TA的精华主题

TA的得分主题

发表于 2024-11-12 15:41 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

老师好

我也用循环的思路也了一下,函数能跑起来,但发现一个奇怪的问题:结果里有 #N/A 的报错;但我就是找不到原因在那里,麻烦帮我看下,谢谢

就好像变量里有个空值一样,就是找不到这个空值是在那里产生的,想不通

=LET(_标题,A1:C1,_x,TOCOL(REDUCE(,REGEXP(C2:C8,"[^;]+",3),VSTACK),3),REDUCE(_标题,_x,LAMBDA(a,b,VSTACK(a,HSTACK(FILTER(A2:B8,ISNUMBER(FIND(b,C2:C8))),b)))))





变量.png

TA的精华主题

TA的得分主题

发表于 2024-11-12 15:56 | 显示全部楼层
mjm04 发表于 2024-11-12 15:41
老师好

我也用循环的思路也了一下,函数能跑起来,但发现一个奇怪的问题:结果里有 #N/A 的报错;但我 ...

可以这样
  1. =REDUCE(A1:C1,C2:C8,LAMBDA(_a,_b,VSTACK(_a,IFNA(HSTACK(OFFSET(_b,,{-2,-1}),TOCOL(REGEXP(_b,"[^;]+"))),OFFSET(_b,,{-2,-1})))))
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2024-11-12 16:06 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
=DROP(REDUCE("",C2:C8,LAMBDA(x,y,VSTACK(x,IFNA(HSTACK(OFFSET(y,,-2,,2),TEXTSPLIT(y,,";")),OFFSET(y,,-2,,2))))),1)

TA的精华主题

TA的得分主题

 楼主| 发表于 2025-2-23 11:04 | 显示全部楼层
本帖最后由 liujunwei4321 于 2025-2-23 11:11 编辑

保持持续的关注

TA的精华主题

TA的得分主题

发表于 2025-2-23 14:14 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
=REDUCE({"课程类别","考核方式","上课地点"},C2:C8,LAMBDA(x,y,VSTACK(x,IFNA(HSTACK(OFFSET(y,,-2,,2),TEXTSPLIT(y,,";")),OFFSET(y,,-2,,2)))))

TA的精华主题

TA的得分主题

发表于 2025-2-23 19:57 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
  1. =REDUCE(F1:H1,C2:C8,LAMBDA(x,y,LET(a,TEXTSPLIT(y,,";"),VSTACK(x,HSTACK(REPTARRAY(OFFSET(y,,-2,,2),ROWS(a)),a)))))
复制代码
微信截图_20250223194056.png

TA的精华主题

TA的得分主题

发表于 2025-2-24 07:29 来自手机 | 显示全部楼层
=HSTACK(TEXTSPLIT(CONCAT(REPT(A2:A8&";"&B2:B8&",",LEN(C2:C8)-LEN(SUBSTITUTE(C2:C8,";",""))+1)),";",",",1),TEXTSPLIT(CONCAT(C2:C8&";"),,";",1))

TA的精华主题

TA的得分主题

发表于 2025-2-24 07:41 | 显示全部楼层
=REDUCE(A1:C1,C2:C8,LAMBDA(x,y,VSTACK(x,IF(SEQUENCE(,3)<3,OFFSET(y,,,,-3),TEXTSPLIT(y,,";",1)))))
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-12-15 03:10 , Processed in 1.034258 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表