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

如何在Google Sheets中将列转成行并重复行标签?

在Google Sheets中将宽表转换为长表(表1转表2)

根据你的需求,表1是宽表结构(日期为行,项目为列),表2是长表结构(日期、项目、数值为三列,每个日期+项目组合为一行),以下是两种实用的实现方法:

方法1:内置逆透视功能(无需公式,操作简单)

  1. 选中表1的全部数据(包含表头),例如范围A1:D4
  2. 点击顶部菜单栏「数据」→「数据透视表和图表」→「数据透视表」
  3. 在弹窗中选择透视表放置位置(推荐选新工作表),点击「创建」
  4. 在右侧「数据透视表编辑器」中:
    • 将「日期」字段拖入「行」区域
    • 将所有项目字段(如项目1、项目2、项目3)拖入「值」区域,确保汇总方式为「求和」(单个值求和不影响结果)
  5. 右键点击透视表内任意值单元格,选择「显示为」→「逆透视列」
  6. 最后将自动生成的「列」表头重命名为「项目」,「值」表头重命名为「数值」,即可得到表2的格式

方法2:公式实现(支持动态更新)

假设表1数据位于A1:D4(A1为「日期」,B1:D1为项目名,A2:A4为日期,B2:D4为对应数值):

  1. 在空白区域输入表头:「日期」「项目」「数值」
  2. 在表头下方的第一个单元格(如F2)输入以下公式:
=ARRAYFORMULA(
  {
    FLATTEN(A2:A4&""),
    FLATTEN(TRANSPOSE(B1:D1)),
    FLATTEN(B2:D4)
  }
)
  1. 按下回车后,公式会自动生成表2的完整结构
  • 公式说明:
    • FLATTEN(A2:A4&""):将日期列重复对应项目次数,展开为单列
    • FLATTEN(TRANSPOSE(B1:D1)):将项目表头转置后展开,让每个项目对应所有日期
    • FLATTEN(B2:D4):将所有数值展开为单列,与日期、项目一一对应
  • 若后续添加新的项目或日期,只需调整公式中的单元格范围即可自动更新

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 22:06:27