Excel formula 有条件地计算列中出现的次数

Excel formula 有条件地计算列中出现的次数,excel-formula,Excel Formula,我有一张表,里面有一张人的名单。每个人都有自己的角色(老板、工人、助手)和职责(打扫厨房、倒垃圾、洗碗、休息) 我还有一张表列出了可能的职责。该责任由代码(a、B、C、D)表示,第三列中可能有一个“X”表示“该责任将被计算”,或者根本没有任何文本表示“该责任将不被计算”。休息日通常没有“X” 我希望能够看到有多少老板、工人和艾滋病患者按照他们被赋予的职责工作 我尝试过使用VLOOKUP,但它没有给我一个数组作为输出。我尝试了索引和匹配的组合,但我无法使它工作。我试着使用SUMPRODUCT和SU

我有一张表,里面有一张人的名单。每个人都有自己的角色(老板、工人、助手)和职责(打扫厨房、倒垃圾、洗碗、休息)

我还有一张表列出了可能的职责。该责任由代码(a、B、C、D)表示,第三列中可能有一个“X”表示“该责任将被计算”,或者根本没有任何文本表示“该责任将不被计算”。休息日通常没有“X”

我希望能够看到有多少老板、工人和艾滋病患者按照他们被赋予的职责工作

我尝试过使用VLOOKUP,但它没有给我一个数组作为输出。我尝试了索引和匹配的组合,但我无法使它工作。我试着使用SUMPRODUCT和SUM与IF的组合。我想我可能误解了如何使用数组函数,或者至少误解了如何在另一个公式中使用结果

提前谢谢你的帮助,我相信答案很简单,但我想不起来

这是一种方法:

所以对于老板来说:

=IF(H12<>"",SUMPRODUCT((C12:C20="Boss")*(D12:D20=G12)),0)+
IF(H13<>"",SUMPRODUCT((C12:C20="Boss")*(D12:D20=G13)),0)+
IF(H14<>"",SUMPRODUCT((C12:C20="Boss")*(D12:D20=G14)),0)+
IF(H15<>"",SUMPRODUCT((C12:C20="Boss")*(D12:D20=G15)),0)
=IF(H12“”,SUMPRODUCT((C12:C20=“Boss”)*(D12:D20=G12)),0)+
如果(H13“”,则SUMPRODUCT((C12:C20=“Boss”)*(D12:D20=G13)),0)+
如果(H14“”,则为SUMPRODUCT((C12:C20=“Boss”)*(D12:D20=G14)),0)+
如果(H15“”,则为SUMPRODUCT((C12:C20=“Boss”)*(D12:D20=G15)),0)
工人:

=IF(H12<>"",SUMPRODUCT((C12:C20="Worker")*(D12:D20=G12)),0)+
IF(H13<>"",SUMPRODUCT((C12:C20="Worker")*(D12:D20=G13)),0)+
IF(H14<>"",SUMPRODUCT((C12:C20="Worker")*(D12:D20=G14)),0)+
IF(H15<>"",SUMPRODUCT((C12:C20="Worker")*(D12:D20=G15)),0)
=IF(H12“”,SUMPRODUCT((C12:C20=“Worker”)*(D12:D20=G12)),0)+
如果(H13“”,则为SUMPRODUCT((C12:C20=“Worker”)*(D12:D20=G13)),0)+
如果是(H14“”,则为SUMPRODUCT((C12:C20=“Worker”)*(D12:D20=G14)),0)+
如果(H15“”,则为SUMPRODUCT((C12:C20=“Worker”)*(D12:D20=G15)),0)
援助:

=IF(H12<>"",SUMPRODUCT((C12:C20="Aid")*(D12:D20=G12)),0)+
IF(H13<>"",SUMPRODUCT((C12:C20="Aid")*(D12:D20=G13)),0)+
IF(H14<>"",SUMPRODUCT((C12:C20="Aid")*(D12:D20=G14)),0)+
IF(H15<>"",SUMPRODUCT((C12:C20="Aid")*(D12:D20=G15)),0)
=IF(H12“”,SUMPRODUCT((C12:C20=“Aid”)*(D12:D20=G12)),0)+
如果(H13“”,则为SUMPRODUCT((C12:C20=“Aid”)*(D12:D20=G13)),0)+
如果(H14“”,则SUMPRODUCT((C12:C20=“Aid”)*(D12:D20=G14)),0)+
如果(H15“”,则SUMPRODUCT((C12:C20=“Aid”)*(D12:D20=G15)),0)

尝试使用COUNTIFS

假设您已将以下范围命名为

  • B12:B20
  • 角色
    C12:C20
  • 职责代码D12:D20
对于工作上司:
=COUNTIFS(角色,“上司”,职责代码,“D”)

对于工作人员:
=COUNTIFS(角色“工人”,职责代码“D”)

对于工作辅助设备:
=COUNTIFS(角色“辅助”,职责代码“D”)

建议将标准,即
Boss
Worker
Aid
放在示例工作表的单元格
C3
C4
C5
中,并用相应的单元格地址替换上述公式中的硬编码标准