excel - 如何计算匹配多个条件的行
问题描述
我需要一个宏来计算有多少行符合某些条件。
在此示例中,宏需要能够计算 where column2
is A
orB
和 where column3
is X
or 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 是不可能的。
这可能吗?
解决方案
使用这个公式:
=SUMPRODUCT(COUNTIFS(B:B,{"A";"B"},C:C,{"X","W"}))
COUNTIFS 可以使用数组,如果超过一个(两个是最大值),一个必须是水平的(使用,
),另一个是垂直的(使用;
)
在这种特定情况下,可以使用 SUM() 而不是 SUMPRODUCT,但如果数组被范围替换:
如果有两个范围,一个必须是垂直的,另一个必须是水平的。这可以通过以物理方式制作范围或在其中使用 TRANSPOSE() 来实现。
如果 SUM() 与范围一起使用,则必须使用 Ctrl-Shift-Enter 输入数组。
推荐阅读
- vim - vim 用不同的文本位置更改多行的文本?
- django - 删除模板中的对象 - django
- unit-testing - 如何测试创建和注入依赖项的函数
- node.js - Koa 服务器的 Access-Control-Allow-Origin 问题
- django-admin - 如何在 admin.py 中按用户选择 list_filter?
- reactjs - 从无模式 JSON 生成动态表单
- java - 如何使用 java.awt 中的 Point 类找到二维数组的点
- react-native - 如何使用 onPress 将样式应用于某个 ListItem?
- python - 在无人机图像中识别汽车
- java - 为什么使用迭代器只读取文本文件的第一行