Excel-如何获取组中的最小值

问题描述 投票:4回答:2

我将示例简化为这样:

ID  Value   MAX
Group1  2   6
Group1  4   6
Group1  6   6
Group2  1   3
Group2  3   3
Group3  7   8
Group3  4   8
Group3  2   8
Group3  8   8
Group4  1   3
Group4  2   3
Group4  3   3
Group5  7   7

列“ MAX”具有我想要的结果

我的两部分问题是

((1)我可以通过哪些方法来获取'Max'列的值?

我目前正在使用数据透视表来帮助支持此功能,但用户抱怨它太慢,可能会使Excel无响应。

然后我尝试将数组函数与这样的公式一起使用:

=MAX(IF($A$9:$A$21=A12,$B$9:$B$21))

[此方法有效,但不幸的是,我了解到它不会保持最新状态,我需要一些机制来刷新数据...并且用户说他们还不想要-另一个按钮来刷新数据。

我还能使用其他功能吗?

您会使用VBA和一些“开,关”事件吗?还是可以在VBA中全部完成?

(2)假设有一个很好的公式可以解决上述问题,我还要求我的Value列实际上是一个可以为空的日期,而我的实际要求是获取组中的最小日期,而忽略任何空白。等式上有任何提示吗?!

谢谢。

excel-vba excel-formula pivot-table array-formulas vba
2个回答
11
投票

在C2中输入数组公式:

=MAX(IF(A:A=A2,B:B))  

0
投票

几件事...我的第一个问题是,我现有的电子表格设置为“手动计算”,而不是“自动计算”。 (在“公式” |“计算选项”菜单下。)>

这是一些示例代码,我用来根据另一列中的“分组”来计算最小日期。 (注意:我的电子表格大约有1500行,当更改单元格并更新公式时,我的确注意到速度变慢)

© www.soinside.com 2019 - 2024. All rights reserved.