问:转置 - >在Google工作表上合并(?)

时间:2018-02-13 00:04:01

标签: google-sheets

尝试转置数据,使行转置为堆叠在一起的单个列。

=ARRAYFORMULA({TRANSPOSE(A1:C1);TRANSPOSE(A2:C2);TRANSPOSE(A3:C3)})

这个公式基本上可以做我想要的但是如果我有更多的行怎么办?我需要进入;每一行TRANSPOSE(Col(x):Col(y))

感谢任何帮助。

3 个答案:

答案 0 :(得分:1)

Max Makhrov的答案很好,但确实受到50k限制。为了解决这个问题,我最近发现了另一种解释方法 interlacing answer另一个问题

在你的情况下,这看起来像这样(最多9行):

=query(
   sort(
     {arrayformula({row(A1:A9)*3, A1:A9});
      arrayformula({row(B1:B9)*3+1, B1:B9});
      arrayformula({row(C1:C9)*3+2, C1:C9})}
   ),
   "select Col2")

答案 1 :(得分:0)

请尝试:

=TRANSPOSE(SPLIT(TEXTJOIN(",",1,A:C),","))

enter image description here

注意:

  • textjoin将加入文字并跳过空白。在C列中添加空格以包含空行。
  • 加入函数的限制为50000 characters

答案 2 :(得分:0)

我是否遗漏了什么,或者为什么没有人建议Flatten

FLATTEN(A1:C3)

并且您可以像往常一样使用 Filter 过滤掉空白单元格,例如

=FILTER(FLATTEN(A1:C3);FLATTEN(A1:C3)<>"")