【发布时间】:2020-04-23 09:25:55
【问题描述】:
如果我的数据集是:
| H | U | | | |
| 100 Main St, Berkeley, CA | $200 | | | |
| 200 Other St, San Francisco, CA | $400 | | | |
| 300 This St, Oakland, CA | $250 | | | |
| 111 That St, San Francisco, CA | $90 | | | |
对于包含“旧金山”一词的行,我如何获得 D 列中所有值的总和?这个数据集在 Sheet1 上,而我的公式在 Sheet2 上 目前,我使用这个公式来总结所有行,而不管他们所在的城市。
=ArrayFormula(sum(iferror(REGEXEXTRACT(Sheet1!U2:U918&".","\$?([0-9]+)[.,]")*1)))
但我尝试使用 SUMIF 和 Regexmatch 作为 ArrayFormula 的第一个参数,但这些都不起作用。
更新:
player0 给了我答案(我在它周围加了一个总和,以便准确地输出我想要的东西)。
=SUM(ARRAYFORMULA(QUERY({Onfleet!H2:H, REGEXEXTRACT(TO_TEXT(Onfleet!U2:U), "\d+")*1}, "select sum(Col2) where lower(Col1) contains 'oakland' group by Col1 label sum(Col2)''")))
【问题讨论】:
-
您将数字显示为 D 中的地址和 C 中的地址,但您的公式看起来像是在尝试使用 U 列。也许您可以分享一个快速示例以更清楚地了解事物的位置?
-
对不起,我会纠正它。我手动创建了虚拟数据,却忘记更改这些数据。
标签: regex google-sheets sum array-formulas google-sheets-query