堆叠每“第 N”列

堆叠每“第 N”列

我试图将每 5 列的数据堆叠在一起,留下空白行。

我发现了一个使用相同逻辑的例子,但它似乎切断了每组底部的一些内容:

=OFFSET(Sheet1!A$2,MOD(ROW()-2,COUNTA(Sheet1!A:A)-1),ROUNDDOWN((ROW()-2)/(COUNTA(Sheet1!A:A)-1),0)*5)

数据:

F G H J 大号 R 年代
1 小狗 老鼠 小狗 老鼠 小狗 老鼠
2 首页 1-1 6 3 1 主场 2-1 2 9 1 主场 3-1 6 三十二 3
3 主页 1-2 1 6 5 主页 2-2 1 6 2 主场 3-2 9 2 6
4 首页 1-3 7 2 4 首页 2-3 4 4 4 首页 3-3 5 5 5
5 首页 1-4 9 4 5 首页 2-4 8 4 6 首页 3-4 7 1 6
6 首页 1-5 1 6 4 首页 3-5 3 8 4
7 首页 3-6 2 9 1
8 首页 3-7 4 2 1
9 首页 3-8 4 2 1

答案1

如果你拥有 Microsoft 365: =SORT(WRAPROWS(TOCOL(DROP(F:S,1),1),4))

在此处输入图片描述

或者:

=LET(x,LAMBDA(data,LET(y,DROP(data,1),FILTER(y,INDEX(y,,1)<>""))),VSTACK(x(F:I),x(K:N),x(P:S)))

如果您使用的是旧版 Excel,请使用以下命令:

=IF(COLUMN(A1)>4,"",
                 IF(ROW(A1)<=(MATCH(9^9,$I:$I,1)-1),
                    INDEX(F$2:INDEX(F:F,MATCH(9^9,$I:$I,1)),ROW(A1)),
                    IF(ROW(A1)<=(MATCH(9^9,$I:$I,1)+MATCH(9^9,$N:$N,1)-2),
                       INDEX(K$2:INDEX(K:K,MATCH(9^9,$N:$N,1)),ROW(A1)-MATCH(9^9,$I:$I,1)+1),
                       IF(ROW(A1)<=(MATCH(9^9,$I:$I,1)+MATCH(9^9,$N:$N,1)+MATCH(9^9,$S:$S,1)-3),
                       INDEX(P$2:INDEX(P:P,MATCH(9^9,$S:$S,1)),ROW(A1)-MATCH(9^9,$I:$I,1)-MATCH(9^9,$N:$N,1)+2),
                 ""))))

但在这种情况下最好使用助手。

相关内容