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

如何基于Google Sheets两个标签页数据生成Tab3格式输出?

解决Google Sheets多标签页合并并实现分组首行显示的问题

核心公式(Tab3的A2单元格输入)

LET(
  // 格式化Tab2维修数据为四列结构
  combined, QUERY(Tab2!A2:C, "SELECT A,B,'',C WHERE A IS NOT NULL", 0),
  // 格式化Tab1售出数据为四列结构
  sales, QUERY(Tab1!A2:C, "SELECT A,B,C,''", 0),
  // 合并两个数据集
  merged, {sales; combined},
  // 按周数、商品名称排序,确保同组数据连续
  sorted, SORT(merged, 1, TRUE, 2, TRUE),
  // 生成分组唯一标识(周数+商品名)
  group_key, sorted!A:A & sorted!B:B,
  // 判断是否为每组第一行
  is_first, group_key <> OFFSET(group_key, 1, 0),
  // 生成最终结果:首行保留完整信息,后续行仅显示维修内容
  final, ARRAYFORMULA(
    IF(
      is_first,
      sorted,
      {"", "", "", sorted!D:D}
    )
  ),
  // 过滤空行
  FILTER(final, sorted!A:A <> "")
)

公式说明

  1. 数据格式化:将Tab1(售出)和Tab2(维修)的数据统一为四列结构,方便合并后对齐。
  2. 合并与排序:合并两个数据集后按周数、商品名称排序,保证同一周同一商品的所有记录连在一起。
  3. 分组标记:通过周数+商品名的组合标识,判断当前行是否为该组的第一行。
  4. 内容填充规则:
    • 组内第一行:保留周数、商品名称、售出数量,第四列留空
    • 组内后续行:仅保留第四列的维修内容,前三列置空
  5. 过滤空行:自动去除合并后产生的空行,保证数据整洁。

注意事项

  • 如果Tab1中存在同一周同一商品的多条售出记录,需先对Tab1数据去重,将公式中的Tab1!A2:C替换为UNIQUE(Tab1!A2:C)。
  • 确保Tab1和Tab2的表头列顺序一致(周数、商品名称、第三列对应售出/维修内容),否则需调整QUERY语句中的列选择。
  • 输入公式时需确保Tab3的A2单元格为空,公式会自动填充整个数据区域。

内容的提问来源于stack exchange,提问作者Kevin Belleza

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 09:26:08