Excel中:选择列最小值,同时将IF到另一列

Excel中:选择列最小值,同时将IF到另一列

问题描述:

在Excel我有一个名为数据表,看起来像这样:Excel中:选择列最小值,同时将IF到另一列

Region Age 
West 21 
East 18 
East 21 
West 26 
East 27 

我希望能够选择的最小和最大年龄为每个地区。下面的功能应该从区域“西”挑选最小年龄:

=MIN(IF(Data[Region]:Data[Region]="West";Data[Age]:Data[Age])) 

相反,它只从当前行选择最小年龄。如何修改它以处理整列数据?

+0

我会使用数据透视表为这项工作。 –

我只是回答了类似的线程最近,但它确实不参考结构化表格。如果您使用的是Excel 2010或更高版本,那么AGGREGATE¹ function会提供一个快速公式。

AGGREGATE MINIF and MAXIF

在D2的标准公式:D3是,

=AGGREGATE(14, 6, Data[Age]/(Data[Region]=D$1), 1) 
=AGGREGATE(15, 6, Data[Age]/(Data[Region]=D$1), 1) 

填充右是必要的。

这种伪MAXIF/MINIF公式的附加值是您实际使用AGGREGATE的LARGE或SMALL子功能。通过增加参数(最终的),您可以接收第二个,第三个等值。

¹ AGGREGATE是随Excel 2010一起推出的。如果您有以前的版本,请发表评论并提供其他解决方案。

公式本身是好的,但我需要将其输入为数组公式(按Ctrl + Shift + Enter进入,而不是简单的ENTER键时)

你几乎接近它期望,你需要一提的是它作为一个Array Formula

您在公式中的关键,而不是按回车键后,按Ctrl + Shift + Enter键,它转换成数组公式并计算单细胞中的结果。

你会注意到,该公式将被更改为{=MIN(IF(Data[Region]:Data[Region]="West",Data[Age]:Data[Age]))}