Excel:值或其他值出现在列中的次数

时间:2013-11-11 22:50:17

标签: excel

我在Excel上有一个专栏,我发现了如何计算一个值出现在其中的次数(例如:列中有多少个1),但我找不到如何计算一次多少次或者此列中出现另一个值(例如:值为1或2的单元格数)。 这是我的一个例子:

A1 1;

A2 1; 2;

A3 1; 3;

A4 2;

A5 1;

A6 2; 3;

A7 1; 2;

  • 在本专栏中,如果我想查找数字为1的单元格数量,我会这样做: = COUNTIF(A1:A7,“ 1 ”)然后结果为:5

  • 但是如果我想找到有多少单元格的数字1或数字2,我找不到怎么办,但我知道结果是7(因为所有这些单元格都有或者1号,或2号) 我找到的唯一方法是计算没有数字2的数字1的单元格数量,并计算数字2的单元格数量没有数字1,并添加总和对于值为“ 1; 2 ”的单元格数量,这给了我一个很长的公式,如: =(COUNTIF(A1:A7, “ 1 ”) - COUNTIFS(A1:A7, “ 1 ”,A1:A7,“ 2 “))+(COUNTIF(A1:A7,” 2 “) - COUNTIFS(A1:A7,” 2 “A1:A7,” 1 < / EM> “))+ COUNTIF(A1:A7,” 1; 2 “)

任何人都有一个更简单的公式? 如果有人能解决这个问题,那么非常感谢你!

2 个答案:

答案 0 :(得分:1)

我对你的公式有点困惑,这部分,例如

=COUNTIFS(A1:A7,"1",A1:A7,"2")

...只能返回0,因为COUNTIFS在“AND”的基础上工作,并且没有单元格可以同时= 1和= 2

如果数据与半冒号完全一致,那么肯定是这个公式

=COUNTIF(A1:A7,"1")

也将返回零,因为您的单元格值都不是1

您是否过度简化了问题的数据?我看不出那个公式会给你一个7

的结果

尝试使用此公式计算有多少单元格包含1或2(或两者)

=SUMPRODUCT((ISNUMBER(FIND(1,A1:A7))+ISNUMBER(FIND(2,A1:A7))>0)+0)

...当然,如果一个单元格包含22或11,它还会计算一个单元格,在这种情况下你想要它吗?

答案 1 :(得分:0)

您可以创建一个vba函数并引用它。

类似

Function MyOrTest(cell)
    If InStr(1, cell.Value, 1) Or InStr(1, cell.Value, 2) Then
        MyOrTest = 1
    Else
        MyOrTest = 0
    End If
End Function

您需要将其添加到VBA中的新模块中。使用它将只允许正常的求和函数。