excel如何统计数值出现次数并知道是谁获得这个数值

2025-04-02 23:49:42
推荐回答(3个)
回答1:

提问没有说明是否按每科的成绩来统计满分人数、并提取满分人姓名。下面的公式和截图按每科来分别统计人数和提取姓名。如图:

H2=COUNTIF(OFFSET($B2:$B27,,MATCH(H1,$C1:$E1,)),100)

右拉到J2,得到各科满分人数。

H3=IF(ROW(1:1)>H$2,"",INDEX($A:$A,SMALL(IF(OFFSET($B$2:$B$27,,MATCH(H$1,$C$1:$E$1,))=100,ROW($2:$27)),ROW(1:1))))

按同时按Ctrl+Shift+Enter三键输入数组公式,右拉到J3,一起下拉到所有列都出现空白单元格,得到各科满分人的姓名。

以上公式用了offset+match,H1:J1的顺序可以与C、D、E列不一致。保证一致的情况下,公式可简化:

H2=COUNTIF(C2:C27,100)

右拉到J2

H3=IF(ROW(1:1)>N$2,"",INDEX($A:$A,SMALL(IF(C$2:C$27=100,ROW($2:$27)),ROW(1:1))))

数组公式,右拉到J3,再一起到所有列出现空白单元格。

回答2:

Microsoft Excel Generic Version
1.Excel数据透视表中count不重复值,比如要计算【A列】不重复值的数量;方法如下:
【1.1.应用countif函数】:
1.1.1.在Excel中增加一列比如【X列】;【X列】的值用公式【=1/Countif(A:A,A2)】得出;在数据透
视表中对【X列】做普通的【SUM】即可得到不重复值的数目;
1.1.2:该方法的思路是,若【A列】某个值重复出现的次数为n,则将这个值重复出现的每行中X列的值
设定为【1/n】;这样n个【1/n】相加即等于1;即实现重复值在SUM过程中与1个【1】同权重;
1.1.3:该方法使用简单,但应用于大量数据时;由于countif函数的效率不高,导致整体计算的效率不高

【1.2.基于排序后的结果,应用if函数】:
1.2.1.对Excel中的数据按A列进行统一的、完全的排序,从大到小,或从小到大都行;但字符和数字必
须混成一体排序,不要分别排序;
1.2.2.在Excel中增加一列比如【X列】;【X列】的值用公式【=if(A2=A1,0,1)】得出;在数据透视表
中对X列做普通的【SUM】即可得到不重复值的数目;
1.1.2:该方法的思路是,若【A列】某个值重复出现的次数为n,仅当该值第一次出现是,将【X列】的
值设定为【1】,其余个重复出现的行中【X列】的值都为【0】;即实现重复值在SUM过程中只被计算1次

1.1.3:该方法效率高,适用于对海量数据的操作;由于需要精心排序,因此对用户的操作有一定要求;

回答3:

统计语文成绩有几个100分
=COUNTIF(C:C,100)