Google Sheets:如何用FILTER/LEN合并100列为1列并拆分多列?
Google Sheets 批量列合并与按行拆分解决方案
一、批量合并100列为单列(无需逐个输入区域)
不用手动拼接每一列的区域,直接用TOCOL函数就能一键完成,它会自动把指定范围内的多列数据转为单列,还能忽略空单元格:
=TOCOL(A:CV, 1)
- 说明:
A:CV对应100列的范围(A到CV正好是100列),如果你的数据列数或起始列不同,直接调整这个范围即可;参数1用于忽略空单元格,和你原来用LEN过滤空值的效果一致。
如果数据有固定行范围(比如每列最多到第100行),可以写得更精准:
=TOCOL(A1:CV100, 1)
二、将单列数据按每41行拆分为多列
如果已经完成单列合并,假设合并后的单列在Sheet1!A:A,在新工作表的A1单元格输入以下公式,就能自动按每41行填充到不同列:
=WRAPCOLS(FILTER(Sheet1!A:A, LEN(Sheet1!A:A)), 41)
- 说明:
FILTER(...)用于过滤单列中的空值;41是每列要显示的行数,数据会按顺序填充到A列(前41行)、B列(下41行)、C列(再下41行)……
一步到位:直接从原始数据转成目标格式
不用分两步操作,直接组合TOCOL和WRAPCOLS,一次性完成合并+拆分:
=WRAPCOLS(TOCOL(A:CV, 1), 41)
这个公式会直接把A到CV列的所有非空数据,按每41行一组,依次填充到新列中,完全匹配你的需求。
内容的提问来源于stack exchange,提问作者user1132149
相关产品推荐
相关产品推荐

