You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Sheets数组公式需求:查找指定值并拆分右侧数据

解决Google Sheets数组公式提取并拆分特定内容的问题

问题分析

你需要在LOADER标签页通过数组公式,从DATA标签页的B-D列中提取所有包含coverage_1的单元格内容,拆分其后的数值并按预期排列。之前的公式失效原因是:直接对多列区域应用SPLIT会因拆分后列数不一致导致布局错位,且未处理多行多列的合并提取逻辑。

解决方案

使用以下数组公式,可批量处理DATA页的所有行,提取并拆分目标内容:

=ARRAYFORMULA(IFERROR(SPLIT(TRIM(FLATTEN(QUERY(TRANSPOSE(IF(REGEXMATCH(DATA!B2:D, "coverage_1"), REGEXEXTRACT(DATA!B2:D, "coverage_1,(.*)"), "")),,9^9))), ","), ""))

公式逻辑拆解

  • REGEXMATCH(DATA!B2:D, "coverage_1"):判断每个单元格是否包含目标字符串
  • REGEXEXTRACT(DATA!B2:D, "coverage_1,(.*)"):提取coverage_1,之后的所有内容
  • TRANSPOSE+QUERY(...,9^9):将每行的有效提取结果合并为一个用空格分隔的字符串
  • FLATTEN+TRIM:将合并后的字符串转为一维数组并清理多余空格
  • SPLIT(..., ","):按逗号拆分字符串为独立列
  • IFERROR:处理无匹配内容的行,返回空值

替代方案(单单元格对应拆分)

如果需要保持LOADER页的列与DATA页的B-D列一一对应(仅拆分对应单元格的有效内容),使用以下公式:

=ARRAYFORMULA(IF(REGEXMATCH(DATA!B2:D, "coverage_1"), SPLIT(REGEXEXTRACT(DATA!B2:D, "coverage_1,(.*)"), ","), ""))

注:此方案会在无匹配的单元格返回空,匹配的单元格拆分为多列,可能导致列错位,适合仅单列含目标内容的场景。

内容的提问来源于stack exchange,提问作者User-12345

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 03:37:01