在Excel的值范围内find最接近0的值(使用非数字字段)
我有一系列的Excel中的单元格与各种正面和负面的数字。 单元格的值由一个IF公式确定,并且该范围内的一些单元格没有值(“”)。
我需要find最接近的单元格的绝对值为0.所以,如果我有一个列表-10,-5,-1,3,6,和“”:我需要得到1的结果。
我尝试了多种方法,但事实是,我有非数字单元格似乎是导致错误的问题。
我试过了:
{=Min(ABS(A1:D10))}
,我按下Ctrl-Shift-Enter(由于非数字而返回一个错误)
{=IF(MAX(D3:D22)<=0,-1,IF(MIN(ABS(D3:D22))=MIN(ABS(IF(D3:D22>0,D3:D22,MAX(D3:D22)))),1,-1))*MIN(ABS(D3:D22))}
,我按Ctrl-Shift-Enter(由于非数字返回一个错误)
{=IF(OR((D3:D22)>0),MIN(ABS(D3:D22)),-MIN(ABS(D3:D22)))}
,其中我按Ctrl-Shift-Enter(返回一个错误因为非数字)
=MIN(ABS(IF(ISNUMBER(D3:D22),D3:D22,9999)))
这是一个数组公式,并且必须用Ctrl + Shift + Enter确认
应该做的伎俩
或更好地使用:
=INDEX(D3:D22,MATCH(MIN(IF(ISNUMBER(D3:D22),ABS(D3:D22))),ABS(D3:D22),0))
这是一个数组公式,并且必须用Ctrl + Shift + Enter确认
不关心文本或空单元格,但有0作为数字将计数…负数也将是负面的(如果你总是需要积极的你需要ABS
整个公式…
如果你有一个上限,比如说10 ^ 9,你可以做什么:
{=MIN(ABS(IF(ISNUMBER(D3:D22),D3:D22,10^9)))}
如果您发现有什么问题可以假设min是什么,请注意,它肯定小于1 +最大值的绝对值,所以您可以使用:
{=MIN(ABS(IF(ISNUMBER(D3:D22),D3:D22,1+ABS(MAX(D3:D22)))))}
我发布这只是因为它为我工作之前,其他用户进来的答案。 我仍然会接受他们的答案,而不是这个。
=MIN(IF(D3:D22>0,D3:D22,ABS(D3:D22)))
当然,我不得不按Ctrl + Shift + Enter来获得这个工作。