【问题标题】:Counting number of distinct people successfully contacted in a date range Excel计算日期范围内成功联系的不同人员的数量 Excel
【发布时间】:2018-04-28 04:42:36
【问题描述】:

下午好,

我有一个大型数据表,其中包含尝试联系客户的帐户。每个条目都标有:

一个。客户名称 湾。尝试联系的日期 C。联系尝试是否成功(S)或不成功(U)

这是一个数据示例,已替换机密名称

我需要计算每个月成功联系的不同人的数量,并将其显示在如下表格中:

请注意,我不想计算他们被成功联系的次数,只要他们至少被联系过一次。

我试过以下公式:

{=SUMPRODUCT(IF((EncounterDate<=DU4)*(EncounterDate>=DT4), 
1/COUNTIFS(EncounterDate, "<="&DU4, EncounterDate, ">="&DT4, 
EncLastFirstName, EncLastFirstName, CMService, "S"), 0))}

DU4 - 一个月的最后日期
DT4 - 月份的第一个日期

我在使用这个公式时遇到了 Div/0 错误。知道我做错了什么,或者我应该做什么?

谢谢,非常感谢!

【问题讨论】:

  • 如果 KC 在 1/1/17 和 1/14/17 成功,而 BW 在 1/1/17 成功,为什么您的预期结果是 1/1/17-1/31 /17?好像应该是2。

标签: excel excel-formula count-unique


【解决方案1】:

您会得到一个#DIV/0!,因为您的除法分母可以为零,并且在第一个未处理的错误上公式“短路”。如果任何行的结果为零,

COUNTIFS(EncounterDate, "<="&DU4, EncounterDate, ">="&DT4, EncLastFirstName, EncLastFirstName, CMService, "S")

...然后你会得到一个#DIV/0!1/COUNTIFS(...)

我的解决方案是删除 IF 部分并将每个条件收集到一个分子中,如果全部为真,则解析为 1,如果为假,则解析为 0。此外,将条件分子的倒数添加到除法运算的分母中;例如如果(CMService="S") 在分子中,则将(CMService&lt;&gt;"S") 添加到分母中。在这些情况下,分母非零,分子为零。零除以任何东西仍然是零(例如 0/100 == 0)所以分母是什么并不重要,你永远不会得到 #DIV/0! 错误。

如果分子和计数中的所有条件都为真,则分子为 1,并且没有任何内容添加到分母。如果分子和计数中的任何条件为假,则分子为 0,并且在分母中添加了一些内容以确保不会出现 #DIV/0!

在 DV4 中作为标准公式没有 CSE,

             [<~~~~~~~~~~~~~~~~~ numerator portion ~~~~~~~~~~~~~~~~~>] / [<~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ denominator portion ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>]+[<~~~~~~~~~~ denominator adjustment portion ~~~~~~~~~~>]
=sumproduct(((EncounterDate>=DT4)*(EncounterDate<=DU4)*(CMService="S"))/(countifs(EncLastFirstName, EncLastFirstName, EncounterDate, ">="&DT4, EncounterDate, "<="&DU4, CMService, "S")+(EncounterDate<DT4)+(EncounterDate>DU4)+(CMService<>"S")))

使用这种用基本数学抵消任何#DIV/0! 的方法,只要将分母调整为分子的倒数,就可以增加或减少条件的数量。

顺便说一句,您问题中的预期结果是错误的。

【讨论】:

  • 我已经修改了您的公式,以响应使用单元格内引用的过滤尝试。这些标准是“Grant”和“Case Manager”——我将在下面的评论中发布公式。如果我想允许任何拨款或任何案例经理,我会尝试用 * 符号填充公式,这适用于其他公式,但不适用于这个公式。任何想法如何修改公式?
  • =SUMPRODUCT(((Encounters[Date]>=$J9)*(Encounters[Date]="&$J9, Encounters[Date] , "$I9)+(Encounters[CM svc]"S")+(Encounters[Grant]$L$3)+(Encounters[Case Manager]$P$3)))跨度>
【解决方案2】:

也许问题在于您只是检查日期,然后假设至少有一次成功的联系。有些人可能只有不成功的尝试,所以你除以 0。

【讨论】:

    猜你喜欢
    • 2022-07-12
    • 1970-01-01
    • 1970-01-01
    • 2011-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多