google-sheets - 请给我这个公式的 ArrayFormula
问题描述
我想实现第一列。
公式为:
=textjoin(char(10),false,A4:F4)
当我转换为 Arrayfromula 时:
=transpose(split(textjoin(char(10),false,{ArrayFormula("~"&A4:A),A4:F}),"~"))
在我的 Arrayformula 中,第一个值是重复的,请帮助!
编辑:
有什么方法可以实现Arrayformula 1(两列)和Arrayformula 2(单列)?
该公式甚至应该使用字符串作为数据而不是强制数字,如下所示:
解决方案
尝试:
=ARRAYFORMULA(REGEXREPLACE(REGEXREPLACE(FLATTEN(QUERY(TRANSPOSE(
TO_TEXT(A4:F6)&"×"),,9^9)), "×", CHAR(10)), " ", ))
更新:
=ARRAYFORMULA({IF(TRIM(FLATTEN(QUERY(TRANSPOSE(A4:F),,
9^9)))="",,JOIN(CHAR(10), A1:F1)),
REGEXREPLACE(REGEXREPLACE(REGEXREPLACE(FLATTEN(QUERY(TRANSPOSE(
TO_TEXT(SUBSTITUTE(A4:F, " ", "♀"))&"×"),,
9^9)), "×", CHAR(10)), " |\n$", ), "♀", " ")})
=ARRAYFORMULA(IF(TRIM(FLATTEN(QUERY(TRANSPOSE(A4:F),,9^9)))="",,
REGEXREPLACE(REGEXREPLACE(REGEXREPLACE(FLATTEN(QUERY(TRANSPOSE(
TO_TEXT(SUBSTITUTE(IF(A4:F="",,A1:F1&": "&A4:F), " ", "♀"))&"×"),,
9^9)), "×", CHAR(10)), " |\n$", ), "♀", " ")))