Excel中如何按指定日期统计指定行内的"A"数量?
Excel统计指定姓名截至指定日期的"A"数量解决方案
方法一:COUNTIF + INDEX + MATCH组合
假设:
- 姓名输入单元格为
K2 - 日期输入单元格为
K3 - 数据区域为
A1:J10(对应你提供的表格范围)
使用以下公式:
=COUNTIF(INDEX(B2:J10,MATCH(K2,A2:A10,0),1):INDEX(B2:J10,MATCH(K2,A2:A10,0),MATCH(K3,B1:J1,0)),"A")
公式逻辑:
MATCH(K2,A2:A10,0):定位输入姓名对应的行号MATCH(K3,B1:J1,0):定位输入日期对应的列号- 两个
INDEX函数配合,生成从该行第一列到目标日期列的动态数据区域 COUNTIF统计该区域内"A"的数量
方法二:SUMPRODUCT函数(更简洁)
同样基于上述单元格假设,使用公式:
=SUMPRODUCT((A2:A10=K2)*(B1:J1<=K3)*(B2:J10="A"))
公式逻辑:
(A2:A10=K2):筛选出姓名匹配的行,符合条件返回1,否则0(B1:J1<=K3):筛选出截至目标日期的列,符合条件返回1,否则0(B2:J10="A"):筛选出单元格内容为"A"的位置,符合条件返回1,否则0- 三个条件相乘后求和,得到同时满足所有条件的总数
注意事项
- 确保输入的姓名、日期与表格中的内容完全匹配(包括文本格式、空格等)
- 如果日期列是文本格式,输入的日期也需保持文本格式;如果是日期格式,需统一格式避免匹配错误
- 根据实际数据范围调整公式中的单元格区域(比如数据行数更多时,把
A2:A10改成A2:A100)
内容的提问来源于stack exchange,提问作者Kunal Sharma
相关产品推荐
相关产品推荐

