【发布时间】:2018-03-03 01:31:13
【问题描述】:
我正在过滤然后根据日期范围对交易数据求和,如果一列包含多个可能值之一。
示例数据
A | B | C | D
-----------|-----|---------------------------------------------------|-------
11/12/2017 | POS | 6443 09DEC17 C , ALDI 84 773 , OFFERTON GB | -3.87
18/12/2017 | POS | 6443 16DEC17 C , CO-OP GROUP 108144, STOCKPORT GB | -6.24
02/01/2018 | POS | 6443 01JAN18 , AXA INSURANCE , 0330 024 1229 GB | -220.10
我目前有以下公式,虽然有效,但速度确实很慢。
=sum(
iferror(
filter(
Transactions!$D:$D,
Transactions!$A:$A>=date(A2,B2,1),
Transactions!$A:$A<=date(A2,B2,31),
regexmatch(Transactions!$C:$C, "ALDI|LIDL|CO-OP GROUP 108144|SPAR|SAINSBURYS S|SAINSBURY'S S|TESCO STORES|MORRISON|MARKS AND SPENCER , HAZEL GROVE|HAZELDINES|ASDA")
)
,0
)
) * -1
公式在单独的表格中,只是一年中每个月结果细分的简单视图
| A | B | C
--|------|----|----------
1 | 2017 | 12 | <formula> # December 2017
2 | 2017 | 11 | <formula> # November 2017
3 | 2017 | 10 | <formula> # October 2017
有没有更高效的方法来实现这一点?
我尝试使用ArrayFormula 和SUMIF,它们适用于字符串条件,但使用SUMIFS 添加更多条件作为日期,它停止工作。
我想不出使用INDEX 和/或MATCH 的方法
【问题讨论】:
标签: google-sheets