我试图将每 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),
""))))
但在这种情况下最好使用助手。