我有一个包含 5 列的表格,我使用 4 列的值作为过滤器。有时任何(或所有)过滤器都可以为空。 表格示例:
ID | 公司 | 月 | 收入 | 退货 |
---|---|---|---|---|
1 | 山姆 | 1 | 1000 | 50 |
2 | 亚马逊 | 1 | 10000 | 100 |
3 | 谷歌 | 2 | 5000 | 200 |
4 | 亚马逊 | 3 | 2000 | 10 |
5 | 微 | 3 | 1000 | 50 |
我如何使用如下查询:
add_header 'Access-Control-Allow-Origin' 'origin-list'
如果例如B3 为空以忽略该条件并将其余过滤器用于计数?我觉得肯定有比用 ifs 为每个场景编码更有效的方法。
答案 0 :(得分:1)
这是一个想法。 如果 B3 为空,您可以通过将整个条件“数组”提高到 0 次幂来“覆盖”过滤器中的该条件。因为任何值的 0 次方都是 1。
=COUNTUNIQUE(FILTER(B2:B,(DATA!C2:C=B3)^(B3<>""),DATA!D2:D>=B4,DATA!E2:E<B5)
答案 1 :(得分:0)
当我们实际上无法访问数据以测试公式时,建议公式总是很困难(有点像机械师试图通过电话诊断一辆看不见的汽车)。但是你可以试试这个:
=COUNTUNIQUE(IFERROR(FILTER(B2:B,DATA!C2:C=IF(B3<>"",B3,DATA!C2:C),DATA!D2:D>=IF(B4<>"",B4,DATA!D2:D),DATA!E2:E<IF(B5<>"",B5,DATA!E2:E+1))))
理论上,它应该按您的预期工作。请报告这是否属实,我将添加解释它是如何工作的。为了效率,我不想把车放在马前。