【问题标题】:Excel Retention CalculationExcel 保留计算
【发布时间】:2020-01-14 11:42:18
【问题描述】:

Excel 大师,

我有一个 Excel 工作表,其中包含员工列表 (ColumnA)、日期 (ColumnB) 和客户 (ColumnC)。我想根据访问过的客户计算员工保留率。

  • 如果客户拜访了某位员工,并在下个月回来拜访了同一位员工,则认为他们为该员工保留。
  • 如果客户拜访了某位员工并在下个月回来拜访了另一位员工,则他们被视为留用。
  • 如果客户在一个月内访问,但下个月没有回来,则视为丢失。
    Employee  Date      Customer
    Zach      11/2/19   Tyler
    Zach      11/20/19  Tyler
    Zach      10/2/19   Tiffany
    Zach      10/3/19   Tiffany
    George    11/1/19   Tiffany
    George    11/9/19   Tyler
    George    10/2/19   Mike
    George    10/30/19  Michael

我想查看数据中所有月份每位员工的保留百分比。

目前,我尝试使用 COUNTIFS 的组合来找到解决方案,但没有成功。

【问题讨论】:

  • 是否需要包含一些示例数据、预期输出、您当前尝试的代码/公式?
  • @JvdV,已添加。很抱歉没有包括在内。
  • 最好是添加为降价,这样其他人就不必重新创建您的数据。另外,请在您的数据旁边包含您的COUNTIFS 尝试和您的实际预期输出(作为数字)。
  • 我们需要看月数还是天数来确定月差?也就是如果第一次光顾是01.10,下一次光顾是30.11,算保留客户还是流失客户?
  • 只是月份数字,所以我做了 =month(Date) 并转换为数字并用于比较。

标签: excel vba excel-formula retention


【解决方案1】:

我可以提供就地计算,但也可以将其转换为单独的报告。

“保留”计算公式:

=--(SUMPRODUCT(--(C2=$C$2:$C$11);(--(MONTH(B2)+1=MONTH($B$2:$B$11)))+(--(MONTH(B2)-1=MONTH($B$2:$B$11))))>0)

“保留百分比”计算的数组公式(适用于所有客户的员工):

{=SUM(IF(A2=$A$2:$A$11; IFERROR(1/(COUNTIFS($A$2:$A$11; A2; $C$2:$C$11; $C$2:$C$11;$D$2:$D$11;1));0); 0))/SUMPRODUCT(1/COUNTIF($C$2:$C$11;$C$2:$C$11))}

编辑:

只需在单独的表格中添加带有百分比报告的示例。相同的公式,只是移动到新区域:

{=SUM(IF(G2=$A$2:$A$11; IFERROR(1/(COUNTIFS($A$2:$A$11; G2; $C$2:$C$11; $C$2:$C$11;$D$2:$D$11;1));0); 0))/SUMPRODUCT(1/COUNTIF($C$2:$C$11;$C$2:$C$11))}

【讨论】:

  • 我在复制和粘贴您的公式时收到错误消息?好像是语法错误?
  • 根据系统本地化,可能需要将公式中的分号替换为逗号
  • 是的,使用逗号有效。所以这是计算客户的保留率正确吗?现在有没有办法计算每个员工的总保留率?
  • 总留存率是什么意思? “保留百分比”字段中的现有公式是通过将每位员工的唯一保留客户数除以唯一客户总数来计算的。由于示例中只保留了 Tiffany,因此为她出现的每个员工分配了 20%(即 1/5)。您可以将所需的计算添加到您的示例中吗?
  • 我想要的输出可能是一个单独的表格,显示每个独特的员工保留百分比。那么也许每个员工的总和超过保留百分比?
猜你喜欢
  • 2011-05-15
  • 1970-01-01
  • 1970-01-01
  • 2020-01-08
  • 2013-11-24
  • 2020-04-13
  • 2020-01-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多