答案 0 :(得分:1)
Arrayformula
,数字5的示例,更改为500。
=ArrayFormula(IFERROR(
vlookup(
(TRANSPOSE(ROW(INDIRECT("a1:a"&ROUNDUP(COUNTA(A:A)/5))))-1)*5 + ROW(INDIRECT("a1:a"&5)),
{ROW(A:A),A:A},2,)
))
ROUNDUP(COUNTA(A:A)/5
列数。 Up
因为最后一列可能包含少于N行。TRANSPOSE(...)*5 + ROW(INDIRECT("a1:a"&5))
获取数字矩阵。矩阵:
1 6 11 16
2 7 12 17
3 8 13 18
4 9 14 19
5 10 15 20
{ROW(A:A),A:A}
获取要返回的行数和值
vlookup
返回值
IFERROR
显示“”是否错误。
答案 1 :(得分:0)
具有任意长的列意味着您需要任意多列用于拆分,并且电子表格公式无法创建新列。所以我们最好的办法就是使用所有可用的列。
假设数据列以单元格A1开头,并且应该拆分的范围的左上角是B1,如果用它填充工作表的前500行,则以下公式将起作用:
ACTION_TECH_DISCOVERED
否则,将A1和B1更改为目标的顶部源和左上角。
说明:偏移量从A1向下移动指定的量,每行增加1,每列增加500.
答案 2 :(得分:0)
您还可以使用以下公式:
=ARRAYFORMULA(
TRIM(
SPLIT(
TRANSPOSE(
SPLIT(
QUERY(
<long_column_range> & "," & IF(
MOD(1, <columns>) = 0, "|", ""
),, 9^9
), "|"
)
), ","
)
)
)
其中:
<long_column_range>
是要拆分的长列的范围(例如A1:A
)和<columns>
是您想要将长列拆分为的列数。来自this article。