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

Excel数据转置合并为单列及FLATTEN扁平化关联数据匹配问题

表格转置合并及扁平化处理方案

需求1:行转置后合并为单列

适配动态列数的场景,可直接使用TOCOL+TRANSPOSE组合公式实现,支持Google Sheets、Excel 365/2021及以上版本:
=TOCOL(TRANSPOSE(你的原始数据区域),1)
公式说明:第二个参数设为1会自动跳过空单元格,不需要手动调整区域范围即可适配列数的动态变化。

需求2:size1_x区间扁平化并关联上下文固定信息

假设你的每行结构为:[左侧固定字段列, size1_x动态列区间, 右侧固定字段列],可直接使用以下动态数组公式实现,自动复制固定信息到扁平化后的对应行:

=LET(
  原始区域, 选中你的全量原始数据范围,
  每行左侧固定列数, 填入你实际的左段固定列数量,
  每行右侧固定列数, 填入你实际的右段固定列数量,
  单行动态列总数, COLUMNS(原始区域)-每行左侧固定列数-每行右侧固定列数,
  总行数, ROWS(原始区域),
  结果, REDUCE({"左列1","左列2","size值","右列1","右列2"},SEQUENCE(总行数),LAMBDA(累计结果,当前行号,
    当前行左段, INDEX(原始区域,当前行号,SEQUENCE(每行左侧固定列数)),
    当前行右段, INDEX(原始区域,当前行号,SEQUENCE(每行右侧固定列数,,每行左侧固定列数+单行动态列总数+1)),
    当前行size值, FLATTEN(INDEX(原始区域,当前行号,SEQUENCE(单行动态列总数,,每行左侧固定列数+1))),
    非空size值, FILTER(current_vals,当前行size值<>""),
    拼接当前行结果, HSTACK(EXPAND(当前行左段,ROWS(非空size值),,当前行左段),非空size值,EXPAND(当前行右段,ROWS(非空size值),,当前行右段)),
    VSTACK(累计结果,拼接当前行结果)
  )),
  结果
)

注意事项

  • 公式仅需要修改前三个参数即可适配你的实际表格结构,不需要调整后续逻辑
  • 公式自动过滤size区间的空值,不会产生冗余空行
  • 如果使用不支持LET/LAMBDA的低版本Excel,可通过辅助列分步实现:先单独扁平化所有size1_x区间的值,再用INDEX(固定列,ROUNDUP(ROW()/每行平均size数量,0))批量填充关联的固定信息即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 07:54:02