如何在Google Sheets中按3行周期拆分单列PDF数据到多列?
解决Google Sheets单列按固定行数分组转多列的问题
初始数据(单列)
| Column A |
|---|
| 需求1 |
| 待完成 |
| 马克 |
| 需求2 |
| 已完成 |
| 史蒂夫 |
| 需求3 |
| 待完成 |
| 史蒂夫 |
期望结果(每3行一组转多列)
| Column A | Column B | Column C |
|---|---|---|
| 需求1 | 待完成 | 马克 |
| 需求2 | 已完成 | 史蒂夫 |
| 需求3 | 待完成 | 史蒂夫 |
解决方案公式
在空白单元格(比如B1)输入以下公式即可自动完成转换:
=ARRAYFORMULA(IFERROR(INDEX(A:A, SEQUENCE(ROUNDUP(COUNTA(A:A)/3), 3, 2, 1))))
公式解析
COUNTA(A:A):统计A列所有非空数据的行数ROUNDUP(COUNTA(A:A)/3):计算需要生成的目标行数(每3行一组,向上取整避免遗漏最后一组不足3行的情况)SEQUENCE(目标行数, 3, 2, 1):生成一个二维序列,指定输出3列,从A2(数据起始行)开始,每行依次取连续3个单元格INDEX(A:A, 序列):根据生成的序列提取对应单元格的数据IFERROR:自动处理最后一组不足3行时的空值报错
备选方法(QUERY+TRANSPOSE组合)
如果偏好使用QUERY函数,也可以用以下公式:
=ARRAYFORMULA(QUERY(TRANSPOSE(QUERY(TRANSPOSE(A2:A), "select * where Col1 is not null")), "select * offset 0 every 3"))
这个公式通过两次转置,配合QUERY的every 3参数实现分组,适合习惯QUERY语法的用户。
内容的提问来源于stack exchange,提问作者Alex M
相关产品推荐
相关产品推荐

