Excel 2016根据排名更改评分标准

问题描述 投票:0回答:3

[请帮助我针对以下情况提出一个评分公式。我有以下简化情况:

我班的所有学生都被预先分配3个等级之一:A,B,C。

所有三个等级都有不同的评分标准:

等级A:

90及更高:X

80至89:是

79及以下:Z

等级B:

80或更高:X

70至79:是

69及以下:Z

等级C:

70及更高:X

60至69:是

59以下:Z

因此,当我在Excel中输入学生的分数时,我想根据他们的排名获得他们的分数(X,Y或Z)。请查看所附的屏幕截图。我想根据B和C列的值获得D列的学生成绩(D列中的当前值是手动输入的。请帮助我制定一个自动获取它们的公式)。条件在单元格B6:D15中。

请帮助!

enter image description here

excel excel-formula match formula rank
3个回答
1
投票

这可以通过index()和match()完成,请看一下:

enter image description here

D3单元格中向下拖动的公式是:

IF(C3="","",INDEX($I$4:$K$8,MATCH(C3,$H$4:$H$8,1),MATCH(B3,$I$3:$K$3,0)))

如果分数为空白,则if()将空白。


0
投票

D2中放置:

=MID("ZYX",MATCH(C2,CHOOSE(CODE(B2)-64,{1,80,90},{1,70,80},{1,60,70})),1)

在这种情况下,无需查找表。如果需要,请更改数组中的范围。为了澄清:

  • [=MID("ZYX",<Step2>, 1)-从ZYXMID的长度为1的子字符串。
  • MATCH(C2,<Step3>)-从>=C2的数组中元素的返回位置。
  • [CHOOSE(CODE(B2)-64,{1,80,90},{1,70,80},{1,60,70})-基于B2,返回在步骤2中选择的适当数组。

逐步进行公式评估以逐步完成。

enter image description here


[[注:如果不确定是否可以同时使用小写和大写,则只需包含UPPER(B2)而不是B2引用。


0
投票

根据OP的布局,尝试使用IMAGINARY功能。

D2中,公式向下复制:

=INDEX({"X";"Y";"Z"},MATCH(C2,INDEX(-IMAGINARY(OFFSET($C$6,MATCH(B2,B$7:B$15,0),0,3)&"i"),0),-1))

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.