【问题标题】:Please help simplifying this IF statement请帮助简化此 IF 语句
【发布时间】:2016-10-04 19:18:17
【问题描述】:

我有这个 IF 语句正在做我想让它做的事情,但我希望它有更多的嵌套语句并且 Excel 不允许这样做。

  • 在每一行中,每个学生都有一个课程分数,按他们的 ID 号排序。
  • 有的学生有11门课程,有的学生有30门。

我想要一个公式,可以根据每个学生的 id 找到最高的课程分数,但是有些学生在下一个学生的课程开始之前有 30 行课程,所以目前我只能阅读前 12 行(课程) 为每个学生。

如果有人有建议,我将不胜感激。

谢谢

=IF(A2=D6,IF(A2=D7,IF(A2=D8,IF(A2=D9,IF(A2=D10,IF(A2=D11,IF(A2=D12,大(H2: M12,1),大(H2:M11,1)),大(H2:M10,1)),大(H2:M9,1)),大(H2:M8,1)),大(H2:M7 ,1)),大(H2:M6,1)),"")

【问题讨论】:

标签: arrays if-statement dynamic excel-formula


【解决方案1】:

假设学生数据位于F6:M562,输出位于B6:C31,在C7 输入此公式数组,并复制到C31 的最后一条记录

输入FormulaArray按下[Ctrl]+[Shift]+[Enter]同时,你会看到 { 和 } 如果输入正确,则在公式周围。

=LARGE(IF($F$6:$F$562<>$B7,0,$H$6:$M$562),1)

【讨论】:

  • 成功了。非常感谢。还有一个问题,如果你不介意的话。使用上面的电子表格...假设课程 03、课程 04、课程 08、课程 10 和课程 25 都是一门实际课程的模块。我怎么能得到这五个的平均值?我可能会创建一个名为 Mark 7 的新列,然后将平均值显示在与课程 03 相同的行上。我想我可以将该平均值包含在您提供的大型语句中,并且我想我可以排除以下数据会被计算两次,但我不确定如何计算这五次的平均值。
  • 关于你的第二个问题,这就是我最初的想法,但必须以这种方式工作,因为你没有回答我之前关于数据可视化的请求。
猜你喜欢
  • 2021-12-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-12
  • 1970-01-01
  • 2014-11-09
相关资源
最近更新 更多