如何根据多个条件计算表中的唯一值?

如何根据多个条件计算表中的唯一值?

我在一家小型慈善机构工作,我正在尝试编写一个公式,该公式将告诉我过去两年中每月有多少独立个人进行了捐赠。下面是一组示例数据,但完整数据集超过 10,000 行,并格式化为表格(因为它使计算工作簿中的其他几个指标更加容易)。成分 ID 是捐赠者的唯一标识符。

到目前为止,我已经尝试了以下操作(所涉及的日期是 2018 年 5 月 31 日和 2016 年 4 月 30 日,尽管实际上我使用的是单元格引用):

=SUM(--(FREQUENCY(IF((Table[Payment Date]<=43251)*(Table[Payment Date]>42521),Table[Constituent ID]),Table[Constituent ID])>0))

不幸的是,公式不起作用。频率函数总是计算结果为 {0,0},我不知道为什么。有什么帮助吗?

Constituent ID  Constituent Codes   Approved Amount Payment Date
1010251         Sponsor             12              12/07/2018
1010298         Supporter           25              10/07/2018
1010282         Supporter           75.35           10/07/2018
1002509         Supporter           10              10/07/2018
1002881         Supporter           100             09/07/2018
1003481         Supporter           5               09/07/2018
1005692         Supporter           10              09/07/2018
1008573         Supporter           50              09/07/2018
1003940         Supporter           5               09/07/2018
1007763         Supporter           100             09/07/2018
1010279         Supporter           10              07/07/2018
1008885         Supporter           5               07/07/2018

答案1

我最初发布了这个问题(我不知道如何再次以同一用户身份登录)。我找到了一个解决方案:

=SUM(--(FREQUENCY(IF((表[付款日期]<=DATEVALUE("2018-05-31"))*(表[付款日期]>DATEVALUE("2016-05-31")),--(表[成分 ID])),--(表[成分 ID]))>0))

我的组成部分 ID 存储为文本,因此只需将其转换为数字。

相关内容