Google Sheets如何拆分单元格多行内容并为每行复制对应行标题
Google Sheets 同单元格换行内容拆分匹配方案
适用场景
- 基于RSS/XML动态导入的选举结果数据,单单元格内存储多个换行分隔的候选人信息,需拆分到独立行,且每行保留对应竞选组别标题
已验证无效的方案问题
=SPLIT(B1,CHAR(10)):仅能按换行拆分到多列,无法生成独立行- 直接使用
=FLATTEN(Sheet2!A1:O250):会产生大量冗余空行,无法为拆分后的候选人条目匹配对应竞选组别
可用公式
在存放结果的工作表A1单元格输入以下数组公式,会自动溢出所有符合要求的结果,无需手动逐行填充:
=ARRAYFORMULA(QUERY(SPLIT(FLATTEN( IF(Sheet2!B:B="",,Sheet2!A:A&"|"&SPLIT(Sheet2!B:B,CHAR(10))) ),"|",0,0),"where Col2 is not null",0))
公式执行逻辑:
- 逐行对B列存储的候选人内容按换行符
CHAR(10)拆分- 为每个拆分出的单条候选人信息,拼接对应行A列的竞选组别标题,两者用特殊分隔符
|间隔- 通过
FLATTEN将所有拆分拼接后的内容转为单列结构- 按分隔符
|将单列内容拆回「竞选组别、候选人信息」两列,过滤空值行,最终得到每行单条候选人+对应组别的目标结构
使用提示
- 公式内的
Sheet2需替换为实际存储「A列竞选组别、B列换行候选人信息」的工作表名称 - 若明确数据行数不超过250行,可将公式中整列引用
Sheet2!A:A/Sheet2!B:B改为Sheet2!A1:A250/Sheet2!B1:B250,提升公式计算速度 - 上游
IMPORTFEED、IMPORTRANGE数据源更新时,拆分结果会自动同步,无需手动操作
内容的提问来源于stack exchange,提问作者DRog
相关产品推荐
相关产品推荐

