查询谷歌工作表,在选择之前将列文本格式化为数据选择中的数字



我正在尝试创建一个查询,在其中我可以将一些数据从文本转换为数字,以下是我目前所做的:

=QUERY(ARRAYFORMULA(IFERROR(REGEXREPLACE('Input'!D:S;".";","))); "select Col1, Col2, Col3, Col13, Col16 WHERE Col13 = 'NET A PAYER' ";1)

这非常适合将句点更改为区域设置的逗号。但当我尝试求和(Col16(时,这不起作用,因为Col16的格式是文本。我不能CNUM,TO_PURE_NUMBER,*1,因为regexreplace的应用范围。我知道它适用于D到s,但我只想在s.上使用

所以,这是我的请求!是否可以在数据选择中执行类似=QUERY('Input'!D:ARRAYFORMULA(IFERROR(REGEXREPLACE(S;".";",")*1)); "select Col1, Col2, Col3, Col13, Col16, SUM(Col16) WHERE Col13 = 'NET A PAYER' ORDER BY Col13 ";1)的操作

以下是一些可访问的数据测试:https://docs.google.com/spreadsheets/d/1Vt1dDHzRPwP2tuL5bsqjaE9TJHwL469OddzSeRKk4jU/edit?usp=sharing

我被卡住了。。。!谢谢你的帮助!

尝试

=QUERY({A:C  ARRAYFORMULA(SUBSTITUTE(D:D;".";",")*1)}; "select Col1, Col2, Col3, Col4 WHERE Col1 = 'NET A PAYER' label Col4 'Gain' ";1)

或者直接在查询中进行求和

=QUERY({A:C  ARRAYFORMULA(SUBSTITUTE(D:D;".";",")*1)}; "select Col1, Col2, Col3, sum(Col4) WHERE Col1 = 'NET A PAYER' group by Col1, Col2, Col3 label sum(Col4) 'Gain' ";1)

看看这对你有用吗?

最新更新