如何在Ms.Office 2019中按ID组生成符合条件的结果列?
Ms.Office Professional Plus 2019 分组处理数据解决方案
CASE 1:按ID分组标记最大值行
假设数据结构为:A列是ID,B列是数值,C列为Result列。在C2单元格输入以下公式,下拉填充即可:
=IF(B2=MAXIFS(B:B,A:A,A2),"yes","")
- 逻辑:
MAXIFS(B:B,A:A,A2)提取当前ID对应所有数值的最大值,IF函数判断当前行数值是否等于该最大值,是则显示"yes",否则留空。
CASE 2:结合status列返回对应结果
假设新增列后的数据结构为:A列是ID,B列是数值,C列是sum,D列是status,E列为Result列。在E2单元格输入以下公式,下拉填充即可:
=IF(B2=MAXIFS(B:B,A:A,A2),IF(D2="not ok",0,SUMIFS(C:C,A:A,A2)),"")
- 逻辑:
- 先通过
MAXIFS判断当前行是否为该ID组的最大值行; - 若是最大值行,再判断该行status:
- 若为"not ok",Result列返回0;
- 若为"ok",用
SUMIFS(C:C,A:A,A2)计算该ID组sum列的总和并返回;
- 非最大值行留空,结果仅显示在每组最大值行。
- 先通过
内容的提问来源于stack exchange,提问作者matchbox13
相关产品推荐
相关产品推荐

