结合 IF AND OR 语句为学生提供加分

结合 IF AND OR 语句为学生提供加分

为了确定哪位学生能获得 5 分的“加分”,研究生必须参加两次研讨会。

本科生 (UGRAD) 必须参加过 SEM 1 或 SEM 2。

如果研究生参加过一次研讨会或者没有参加过研讨会,则奖励=0。如果研究生没有参加过研讨会,则奖励=0。

https://i.stack.imgur.com/gfcPX.png

我想出了针对本科生、研究生和研究生的公式,但很难按照要求将这些功能组合成一个。

对于 GRAD 我使用了:

=IF(AND(Status="grad",Sem_1="present",Sem_2="present"),5,0)   

对于 UGRAD 我使用了:

=IF(OR(Sem_1="present",Sem_2="present"),5,0) 

** 编辑只能使用一个公式

答案1

如果你可以使用:
=IF(AND(Status="grad",Sem_1="present",Sem_2="present"),5,IF(AND(Status="ugrad",OR(Sem_1="present",Sem_2="present")),5,0))

我通过添加和状态将您的 2 个 if 合并为一个,这是一个嵌套的 if,在 false 部分,您可以启动第二个语句。我尝试使用正常引用:
=IF(AND(B3="grad",C3="present",D3="present"),5,IF(AND(B3="ugrad",OR(C3="present",D3="present")),5,0))
使用相同的图片显示
B 列是状态 C 和 D 列 Sem_1 和 Sem_2

答案2

没有任何IF声明,只是为了好玩。在单元格中H5

=5*(0<(Status="grad")*((Sem_1="present")*(Sem_2="present"))+(Status="ugrad")*((Sem_1="present")+(Sem_2="present")))

在此处输入图片描述

present我将通过将任何状态 更改为1absent来进一步改进此工作表0。您可以使用自定义数字格式使它们显示为“存在”和“不存在”(即,通过选择这些单元格,按 Ctrl+1,转到自定义,并指定"present";;"absent"为格式。

在此处输入图片描述

这将使表格看起来完全相同,但公式变得更短:

=5*(0<(Status="grad")*(Sem_1+Sem_2)+(Status="ugrad")*(Sem_1*Sem_2))

在此处输入图片描述

这也更易于维护——如果您想要更改,比如从“出席/缺席”更改为“出席/缺席”,您无需编辑公式。换句话说,该公式不会对 Sem_1 和 Sem_2 单元格的措辞做出假设,只会假设它们的值。例如,它还可以更轻松地计算出出席/缺席的学生人数。

相关内容