在 MS Excel 中,如何计算一列中另一列中每个不同值的不同值?

在 MS Excel 中,如何计算一列中另一列中每个不同值的不同值?

假设我在 Excel 表中有以下数据:

Country Fruit
USA     Banana
USA     Apple
USA     Apple
USA     Orange
USA     Banana
USA     Apple
UK      Banana
UK      Banana
UK      Apple

我想计算每个国家有多少种不同的水果。期望输出如下:

在此处输入图片描述

我可以使用什么公式来实现这一点?

答案1

你可以尝试一下这个SUMPRODUCT公式:

在此处输入图片描述

  • 单元格中的公式E23,填写完毕。

    =SUMPRODUCT((D23:D31 <> "")*(C23:C31=C23:C31),1/COUNTIF(D23:D31,D23:D31 & ""))
    

编辑:

添加新公式,因为@Jeeped 启发我修正现有公式以获得期望的结果。

在此处输入图片描述

  • 单元格中的公式E23

    =SUMPRODUCT((C$23:C$31=C23)/(COUNTIFS(C$23:C$31, C23, D$23:D$31, D$23:D$31)+(C$23:C$31<>C23)))
    

注意:

由于您应该将公式向下拖动,因此为了避免之后出现零row 31,您可以使用此公式的修订版本。

=IF(SUMPRODUCT((C$23:C$31=C23)/(COUNTIFS(C$23:C$31, C23, D$23:D$31, D$23:D$31)+(C$23:C$31<>C23)))=0,"",SUMPRODUCT((C$23:C$31=C23)/(COUNTIFS(C$23:C$31, C23, D$23:D$31, D$23:D$31)+(C$23:C$31<>C23))))

根据需要调整公式中的单元格引用。

相关内容