Google Sheet特定列转置公式解决方案咨询
Google Sheet特定列转置+关联字段重复解决方案
针对你需要将「Input (Data Entry)」中黄色高亮列(Field5A/5B/5C)转置到「Output (Dataset)」,同时让Field1-4等关联字段重复对应每一行转置数据的需求,以下是无需手动复制、避免引用跳转的数组公式方案:
方案1:关联字段合并为单单元格(快速实现)
在「Output (Dataset)」的A2单元格输入以下公式,自动生成结果:
=ARRAYFORMULA( QUERY( { FLATTEN(Input!A2:A&"|"&Input!B2:B&"|"&Input!C2:C&"|"&Input!D2:D), FLATTEN(Input!E2:G) }, "select Col1, Col2 where Col2 is not null", 0 ) )
FLATTEN(Input!E2:G):将3列黄色高亮数据转置为单列- 第一个
FLATTEN把Field1-4用|拼接,确保每一行转置数据都对应原始的关联字段组 QUERY过滤掉空值行,避免无效数据
方案2:关联字段拆分到独立列(符合目标格式)
如果需要把Field1-4分别放在独立列,Field5单独一列,在「Output (Dataset)」的A2单元格输入:
=ARRAYFORMULA( LET( data, 'Input (Data Entry)'!A2:G, ids, INDEX(data,,1):INDEX(data,,4), vals, INDEX(data,,5):INDEX(data,,7), expanded_ids, INDEX(ids, CEILING(SEQUENCE(ROWS(ids)*3)/3), SEQUENCE(1,4)), expanded_vals, FLATTEN(vals), FILTER({expanded_ids, expanded_vals}, expanded_vals<>"") ) )
LET定义变量简化公式逻辑:ids提取Field1-4区域,vals提取黄色高亮列区域expanded_ids通过序列生成重复索引,让每组Field1-4自动重复3次(对应3个Field5列)FLATTEN(vals)转置黄色高亮列为单列FILTER剔除空值行,保证结果整洁
使用说明
两个公式均为数组公式,粘贴到目标单元格后会自动填充所有符合条件的行,无需手动向下复制,彻底解决引用跳转问题。
内容的提问来源于stack exchange,提问作者Ludicium
相关产品推荐
相关产品推荐

