在Excel中使用SMALL函数,出现IF函数问题

时间:2019-09-18 14:17:19

标签: excel excel-formula

我试图获取数据集中的最高和最低值并记录​​每个实例。我已经使用下面的电子表格来做到这一点。

我想获得最少的出现,并且如果有一个或多个相同的值,它将也列出这些值。但是,当我使用我拥有的东西时,我无法获得停止列出的数字。

我假设这是因为这些数字与原始数据来自的小数位数不完全相同。例如最低值为21.5,但原始数据为21.498,等等。

我尝试使用Round函数,但是它仅更改单元格的格式。

有人找到解决方法吗?

*编辑***** 我只想报告最小值,并且如果多次出现相同的数字(到小数点后一位),则也要记录这些值。问题是,如果值等于小数点后一位,我不知道如何告诉excel停止列表。我试过了round函数,但是它只更改单元格的格式而不是实际数字,因此excel认为它们是不同的值。我不确定如何使它正常工作。

G3是顶部带有=IFERROR(SMALL($C$3:$C$101,A3),"")的单元格。

=IFERROR(SMALL($C$3:$C$101,A3),"")

=IFERROR(IF(SMALL($C$3:$C$101,A4)=G3,"",SMALL($C$3:$C$101,A4)),"")

数据是;

enter image description here

我需要最高和最低的数据到小数点后一位。

2 个答案:

答案 0 :(得分:0)

这应该解决它:

G3:

=IFERROR(ROUND(SMALL($C$3:$C$101,A3);1),"")

从G4开始:

=IFERROR(IF(ROUND(SMALL($C$3:$C$101,A4);1)=G$3,"",ROUND(SMALL($C$3:$C$101,A4);1)),"")

答案 1 :(得分:0)

您可以使用Array函数(按Ctrl + Shift + Enter组合输入):

=SMALL(ROUND($C$3:$C$20,1),A3)

对于匹配的序列号:

=INDEX($B$3:$B$20,MATCH(SMALL($C$3:$C$20,A3),$C$3:$C$20,0))

以下是结果(格式为小数点后3位,以证明值正确取整):

enter image description here