谷歌表格逐行转置部分内容,arrayformula等函数实现不全求解决
解决方案
你可以使用以下公式实现逐行转置需求:
=ARRAYFORMULA({FLATTEN(IF(SEQUENCE(1, COLUMNS(B4:C)), A4:A)), FLATTEN(B4:C)})
公式说明
COLUMNS(B4:C)用于获取你需要横向转纵向的列数,你可以根据实际需要调整这部分的范围IF(SEQUENCE(1, COLUMNS(B4:C)), A4:A)会将A列(行主键列)的每个值,按照需要转置的列数重复对应次数,确保转置后每行数据都能匹配到对应的主键- 两个
FLATTEN分别处理重复后的主键列和需要转置的数值列,最后通过大括号拼接为最终的两列表格
如果你不需要保留主键列,仅需要将B4:C的内容按行展开为单列,直接使用=ARRAYFORMULA(FLATTEN(B4:C))即可实现,如果你之前用这个公式结果不符合预期,调整B4:C为你实际需要转置的单元格范围即可。
内容的提问来源于stack exchange,提问作者Zin Yosrim
相关产品推荐
相关产品推荐

