EXCEL中根据条件求最大值,要求用函数公式!

例如表格为当月各工程师处理故障所花时间,总共有几百条,列A为工程师姓名,列B为某一次故障处理所花的时间。
现在需要在工作表2中总对各工程师当月的工作进行统计,其中有一项为“最长处理时间”是指当月某位工程师所花时间最长的一次任务时间,如何使用公式进行计算。
例如每个工程师当月故障的平均处理时间可以用AVERAGEIF进行计算,但求最大值并没有MAXIF函数...

第1个回答  2013-03-17

输入如下数组公式,按三键CTRL+SHIFT+回车  结束。


=MAX((A$2:A$7=D2)*B$2:B$7)


本回答被提问者采纳
第2个回答  推荐于2019-08-28

在H2中输入数组公式:

= max(IF(左2美元:20美元,LeN($G2)= $G2,B$ 2:B$20,0))

在K2中输入数组公式:

=偏移($$ 1,min(IF)(左($$ 2:$$ 20,LeN($G2))=$G2)*(B $ 2:B $ 20=H2),行(B $ 2:B $ 20=H2),65535)

数组公式的输入方法是将公式放置在编辑栏中,按Ctrl + Shift +输入三个键同时按压结束输入。
拉H2K2右三格并下拉。

注:

该公式可适用于复姓(如欧阳)。

如果相同的姓氏具有相同的最大值,它只能识别第一个最大数额的拥有者。

本回答被网友采纳
第3个回答  2013-03-17
=MAX((工程师所处的列=工程师)*(时间列))
数组公式,请同时按下shift+ctrl+enter三键结束
如果还要分月的话在中间再乘上月份判断就行追问

非常感谢,按你的公式可以得到正确的结果。但有个美中不足的地方就是这样不能忽略文本或空值...如果可以忽略的话那最好了。

追答

截个图来看看。带上行列标

追问

因为每个月总的故障数不一样,保存为模板后粘贴另一个月的数据进去后还需要手动修改比较麻烦...如果公式无法解决只能寄希望于微软在后续版本提供MAXIF函数了...PS:郁闷为什么有AVERAGEIF、SUMIF函数唯独没有MAXIF...

第4个回答  2013-03-17
需要提供样表,发表到邮箱。