Excel 2013 需要统计按日期和代理过滤的数据块

Excel 2013 需要统计按日期和代理过滤的数据块

我有一张缺勤表,其中缺勤用“A”标记(您可以忽略假期的 H)。

我需要计算各个代理的单独缺勤次数(例如,代理 1 缺勤 5 天,算作 1 次缺勤,代理 4 缺勤 1 天,也算作 1 次缺勤)。

使用 Excel 2013。

任何建议都值得感激。

在此处输入图片描述

答案1

我相信这个公式会起作用(在 Excel 2016 中测试过):

=SUM(IF(FREQUENCY(IF(B2:Z2="A",COLUMN(B2:Z2)),IF(B2:Z2<>"A",COLUMN(B2:Z2))),1))

根据需要修改列引用。

您也可以使用:
=SUM(IF(FREQUENCY(IF(B2:Z2=$A$5,COLUMN(B2:Z2)),IF(B2:Z2<>$A$5,COLUMN(B2:Z2))),1))
因为您使用 A5 来表示“A”的含义。

这是一个数组公式,因此您必须在输入公式后按 CTRL+SHIFT+ENTER。在第一行输入公式,然后复制/填充。

这是我找到的公式的修改这里

编辑:假设您有一行表示全年,并且一年的第一天在 D 列(如您的示例所示),则公式将是:
=SUM(IF(FREQUENCY(IF(D8:ND8=$A$5,COLUMN(D8:ND8)),IF(D8:ND8<>$A$5,COLUMN(D8:ND8))),1))
或者:
=SUM(IF(FREQUENCY(IF(D8:ND8="A",COLUMN(D8:ND8)),IF(D8:ND8<>"A",COLUMN(D8:ND8))),1))
如果您更愿意在公式本身中使用表示缺失的字符。此公式将位于同一行。同样,这是一个数组公式,因此您必须按 SHIFT+CTRL+ENTER 才能使其起作用,然后向下填充所需的行数。

相关内容