转置列并添加分隔符列

时间:2018-11-15 08:34:44

标签: google-sheets google-sheets-query

我正在尝试将一张纸上的一列转换为另一张纸的一行,并用新的空白列分隔每个结果

= TRANSPOSE(Sheet1!A1:A30)

什么是简便的方法,而不必在原始工作表的每一行之间添加空白行

谢谢

2 个答案:

答案 0 :(得分:3)

我认为这可能是最简单的方法

split(textjoin("||",,Sheet1!A1:A30),"|",,false)

答案 1 :(得分:1)

此答案基于汤姆斯的答案:

  

split(textjoin("||",,Sheet1!A1:A30),"|",,false)

我喜欢解决方案,因为它很简单。

更一般的问题是:

如何使用公式添加N个额外的分隔符列

这是公式:

=TRANSPOSE(SPLIT(JOIN("|"&rept("|",1),A1:A30),"|",1,0))

其中

  • “ |”是您数据集中没有的稀有字符
  • rept("|",1)将获得N个分隔符列。将1更改为N。

该公式的唯一问题是join的功能限制为50000个字符。

对于大型数据集,最终函数不会给出错误。

请尝试:

=TRANSPOSE(ArrayFormula(TRIM(SPLIT(QUERY(A1:A30&"|"&rept("|",1),,2^99),"|",1,0))))

  • query替换join并且没有限制
  • trim是必需的,因为查询会在每行的末尾创建空格。