首页 > 解决方案 > 如何计算匹配多个条件的行

问题描述

我需要一个宏来计算有多少行符合某些条件。

在此示例中,宏需要能够计算 where column2is AorB和 where column3is Xor W

column1 column2 column3  
name1   A       X  
name2   B       X  
name3   A       W  
name4   C       X  
name5   A       Z  
name6   C       X  
name7   B       W  

它应该返回4, 因为name1, name2, name3,name7是匹配的。

我尝试过使用COUNTIFS数组公式,但似乎没有 VBA 是不可能的。

这可能吗?

标签: excelexcel-formula

解决方案


使用这个公式:

=SUMPRODUCT(COUNTIFS(B:B,{"A";"B"},C:C,{"X","W"}))

COUNTIFS 可以使用数组,如果超过一个(两个是最大值),一个必须是水平的(使用,),另一个是垂直的(使用;

在这种特定情况下,可以使用 SUM() 而不是 SUMPRODUCT,但如果数组被范围替换:

  1. 如果有两个范围,一个必须是垂直的,另一个必须是水平的。这可以通过以物理方式制作范围或在其中使用 TRANSPOSE() 来实现。

  2. 如果 SUM() 与范围一起使用,则必须使用 Ctrl-Shift-Enter 输入数组。


推荐阅读