我正在尝试将一张纸上的一列转换为另一张纸的一行,并用新的空白列分隔每个结果
= TRANSPOSE(Sheet1!A1:A30)
什么是简便的方法,而不必在原始工作表的每一行之间添加空白行
谢谢
答案 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
是必需的,因为查询会在每行的末尾创建空格。