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

Google Sheets技术问询:如何依据单行数值从其他工作表生成多行数据

Google Sheets 根据PCS数值生成对应重复行的方案

要实现根据每行的PCS数值生成对应数量的重复行,同时过滤掉PCS为0的条目,可以使用QUERY结合FLATTEN、ARRAYFORMULA等函数组合完成,公式如下(假设原始数据在名为Sheet1的标签页,表头在第1行,数据从第2行到第5行):

=QUERY(
  ARRAYFORMULA(
    SPLIT(
      FLATTEN(
        IF(Sheet1!B2:B5>0, REPT(Sheet1!A2:A5&"|"&Sheet1!B2:B5&"|"&Sheet1!C2:C5&"♦", Sheet1!B2:B5), "")
      ),
      "♦"
    )
  ),
  "SELECT Col1, Col2, Col3 WHERE Col1 IS NOT NULL",
  0
)

公式说明:

  1. 过滤无效行:IF(Sheet1!B2:B5>0, ...)跳过所有PCS为0的行,避免生成无效重复内容
  2. 生成重复内容:REPT(..., Sheet1!B2:B5)将每行的Code、PCS、Data用|拼接后,重复对应PCS次数,并用♦作为每行的分隔符
  3. 展开内容:FLATTEN把所有重复的拼接内容转换成单列数据
  4. 拆分列:SPLIT按♦拆分每个重复条目,还原成三列数据
  5. 筛选整理:QUERY最终过滤掉空行,提取有效三列数据,生成目标表格

如果你的原始数据范围不同,只需调整公式中Sheet1!B2:B5、Sheet1!A2:A5等引用范围即可。

内容的提问来源于stack exchange,提问作者Marek Frick

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 22:50:29