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]))
相反,它只从当前行选择最小年龄。如何修改它以处理整列数据?
答
我只是回答了类似的线程最近,但它确实不参考结构化表格。如果您使用的是Excel 2010或更高版本,那么AGGREGATE¹ function会提供一个快速公式。
在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]))}
我会使用数据透视表为这项工作。 –