有谁知道如何arrayformula这个join功能?
我的公式并不像这里的示例那么复杂。ArrayFormula联接中的过滤器(Google Spreadsheets)
它不包含filter函数,因此我不确定该答案中的内容适用于和不适用。
我想数组公式: =if(isblank(B2),,join("," ,B2:I2))
使用正常的方式来排列某些东西是行不通的:
=ArrayFormula(if(isblank(B2:b),,join(",",B2:b:I2:i)))
我也有分裂 split(B2, ",")
=ArrayFormula(split(B2:B,",")) 只做第一行
我试图在谷歌电子表格中的ARRAYFORMULA函数中使用split函数.
我希望" 1.2.3.4 "成为" 1 "," 2 "," 3 "," 4 "
这是单行代码(仅适用于1行)的代码:
=SPLIT(A2;".")
Run Code Online (Sandbox Code Playgroud)
这是我想要实现的(同时处理多行):
//alone
=SPLIT(A2:A;".")
//or with ARRAYFORMULA
=ARRAYFORMULA(SPLIT(A2:A;"."))
Run Code Online (Sandbox Code Playgroud)
由于SPLIT函数不能在ARRAYFORMULA函数中使用,我搜索了一个变通方法(ARRAYFORMULA()不能与SPLIT()一起使用):
=ARRAYFORMULA(IFERROR(REGEXEXTRACT("."&A2:A;"^"&REPT(".+[^.]+";COLUMN(OFFSET(A2;;;1;4))-1)&".+([^.]+)")))
Run Code Online (Sandbox Code Playgroud)
它几乎正在工作,除了它没有正确分割的事实,这是我得到的结果:
"1.2.3.4"变为"4","4","4","4"
如果我可以让解决方法真正正常工作或更好的替代方案,那将是非常棒的......