我正在使用Google表格并寻找能够将列表分为两列并在一列中交替排列的数组法。该工作表包含大约5,000行,每行超过35个字符。
我试过了:
=transpose(split(join(" ", query(transpose(B5:C),,50000)), " "))
但后来我收到了这条消息:
请看这里的表格:
https://docs.google.com/spreadsheets/d/11T1Roj1trviOSiiTZS292-4l3oODid7KLi9oGz3Z66o/edit#gid=0
答案 0 :(得分:3)
编辑: 我真诚的道歉,我没有仔细阅读这个问题。我的回答不正确。
这应该有效:
={B5:B12;C5:C12}
小心不要将其改为
={B5:B;C5:C}
这将启动一个无限循环,其中电子表格将增加电子表格中的行数以允许此输出列扩展,但这样做会增加2个输入列的长度,这意味着输出列的长度会增加甚至更多,因此电子表格会尝试添加更多行等等。每当您尝试打开它时,它都会使您的工作表崩溃。或者
答案 1 :(得分:3)
假设你的2列是A和B,这个公式将" interlace"它们:
=query(
sort(
{arrayformula({row(A1:A3)*2, A1:A3});
arrayformula({row(B1:B3)*2+1, B1:B3})}
),
"select Col2")
解释,从内部展开公式:
答案 2 :(得分:1)
在第5行:
=ArrayFormula(offset(B$5,INT((row()-5)/2),iseven(row())))
然而,需要将其复制下来。