首页 > 解决方案 > 用于定义动态数据中 COUNTIF 值范围的 Excel 公式

问题描述

情节...

  1. Excel 文件是从动态加载到 Excel 表中的数据生成的。
  2. 一列具有与一组记录相关联的值。
  3. 记录组的范围可以从单条记录到数十条记录。
  4. 第二列具有各种元数据值。
  5. 下一列包含一个公式,用于确定组的行中是否存在给定的元数据值。示例:[NON-HUMANS] =IF(COUNTIF(RANGE,"<>HUMAN")>0,"YES","NO")

注意 - 组值与有数百个 UUID 相关,为了简化示例数据,我使用了 ALPHA、BRAVO、CHARLIE、ETC。

问题 - 随着组记录数量的变化,我需要根据 GROUP 列值定义公式中的范围。

样本数据集

GROUP,MEMBERS,SPECIES
ALPHA,Scooby,DOG
ALPHA,Shaggy,HUMAN
ALPHA,Velma,HUMAN
ALPHA,Daphne,HUMAN
ALPHA,Fred,HUMAN
BETA,Alvin,CHIPMUNK
BETA,Simon,CHIPMUNK
BETA,Theodore,CHIPMUNK
CHARLIE,Superman,HUMAN
CHARLIE,Batman,HUMAN
CHARLIE,Robin,HUMAN
CHARLIE,Wonder Woman,HUMAN
CHARLIE,Aquaman,HUMAN
CHARLIE,Wonder Dog,DOG
DELTA,Spider-Man,HUMAN
DELTA,Ice-Man,HUMAN
DELTA,Firestar,HUMAN

在此处输入图像描述

标签: excelrangecountif

解决方案


如果你有Excel O365那么你可以利用XMATCH(). 尝试-

=IF(A2<>A1,SUM(--((INDEX($C$2:$C$18,XMATCH(A2,$A$2:$A$18,0,1)):INDEX($C$2:$C$18,XMATCH(A2,$A$2:$A$18,0,-1)))<>"HUMAN")),"")

在此处输入图像描述


推荐阅读