很多同学会觉得 Excel 单个案例讲解有些碎片化,初学者未必能完全理解和掌握。不少同学都希望有一套完整的图文教学,从最基础的概念开始,一步步由简入繁、从入门到精通,系统化地讲解 Excel 的各个知识点。

现在终于有了,以下专栏,从最基础的操作和概念讲起,用生动、有趣的案例带大家逐一掌握 Excel 的操作技巧、快捷键大全、函数公式、数据透视表、图表、打印技巧等……学完全本,你也能成为 Excel 高手。

当数据表中每个分类都有多个重复项时,如何计算出各个分类所对应的最大值?


案例:


计算出下图 1 中每个人获得的最高奖金,效果如下图 2 所示。


解决方案 1:


1. 在右边设置结果数据表模板,列出所有人名。


2. 在 I2 单元格中输入以下公式 --> 按 Ctrl+Shift+Enter --> 下拉复制公式:

=MAX(($C$2:$C$25=H2)*($F$2:$F$25))


公式释义:

  • $C$2:$C$25=H2:判断区域中的每个单元格是否等于 H2,生成一组结果为 true 或 false 的逻辑值;
  • *($F$2:$F$25):将上述逻辑值与区域中的单元格相乘,结果为 F 列的数值或 0;也就是说当 C 列的人名与 H2 单元格的人名相等时,提取出 F 列的奖金值,否则就为 0;
  • MAX(...):计算出相同人名下的最大奖金值


解决方案 2:


也可以使用如下公式。


1. 在 I2 单元格中输入以下公式 --> 按 Ctrl+Shift+Enter --> 下拉复制公式:

=AGGREGATE(14,6,$F$2:$F25/($C$2:$C25=H2),1)


公式释义:

  • aggregate 是个万能函数王,几个参数含义分别如下:
    • 14:相当于 large 函数;
    • 6:忽略错误值;
    • $F$2:$F25/($C$2:$C25=H2):将 $F$2:$F25 区域中的每个值除以 $C$2:$C25=H2 计算出来的一组逻辑值 true 或 false(相当于 1 或 0),结果为 F 列的值或错误值;
    • 1:提取出第一大的值