在不使用MAXIFS函数的情况下,你可以使用数组公式或者辅助列来解决这个问题。以下是两种常见的方法:
### 方法1:使用数组公式
1. 假设你的数据在A列(类别)和B列(数值),你想找出每个类别中的最大值。
2. 在C列(类别)旁边输入以下数组公式(在Excel 365或Excel 2019中,你可以直接输入公式并按Enter键,Excel会自动识别为动态数组公式;在早期版本的Excel中,你需要按Ctrl+Shift+Enter键来输入数组公式):
```excel
=MAX(IF(A:A=$A$2:A$100, B:B))
```
* 这里 `$A$2:A$100` 是你想要检查的范围,你可以根据实际情况调整。
* `IF(A:A=$A$2:A$100, B:B)` 会创建一个数组,其中只包含与 `$A$2:A$100` 相匹配的行。
* `MAX()` 函数则会返回这个数组中的最大值。
注意:在使用这种方法时,请确保你的数据范围是正确的,并且你正在查找的类别确实存在于这个范围内。
### 方法2:使用辅助列
1. 在D列(辅助列)旁边,为每个类别添加一个新的行。
2. 在D2单元格中输入以下公式,并将其拖动到整个D列:
```excel
=IF(A2=$A$2, B2,)
```
* 这个公式会检查A列中的值是否与第2行的类别相匹配。如果匹配,则它将显示B列中的值;如果不匹配,则它将显示为空字符串。
3. 现在,在E2单元格中输入以下公式来找出每个类别的最大值:
```excel
=MAX(IF(D:D<>, D:D))
```
* `IF(D:D<>, D:D)` 会创建一个数组,其中只包含非空字符串(即与第2行类别相匹配的行)。
* `MAX()` 函数则会返回这个数组中的最大值。
注意:这两种方法都有一定的局限性。例如,如果你的数据有重复值,或者你的类别列表不是连续的,那么这些方法可能不会给出最准确的结果。在这种情况下,使用MAXIFS函数可能是更好的选择。
原创文章,作者:LifeTo.Fun,如若转载,请注明出处:https://www.lifeto.fun/archives/648