Excel – find一组数字中最大的差距?

我有一系列的数字
0,1,99,5,5,98,9
他们是未分类的,将保持这种方式。
我不能使用macros。
我想要一个公式或数组公式的答案。
89是sorting时最大的差距(9到98之间)。
我想要一个公式,没有vba,并没有sorting我的列或行。

我需要一个公式来对列表进行sorting,并相对于sorting列表减去一个单元格,并给出它创build的差异列表的最大差异。

所以名单变成0,1,5,5,9,98,99
从前面减去电stream(na,1,4,0​​,4,89,1)
并给了我最大的89。

我的列表是7行的列。

这个公式必须是数组input 。 在公式中,RNG是指您input数字的范围,例如A1:A7

 =MAX(LARGE(RNG,ROW(INDIRECT("1:"&-1+COUNT(RNG))))- LARGE(RNG,ROW(INDIRECT("2:"&COUNT(RNG))))) 

数组input公式,在将公式input到单元格或公式栏后,按住Ctrl键并按Enter键 。 如果你这样做是正确的,Excel将把括号{…}放在公式的周围。

您可以通过使用“公式”function区的“公式审核”选项卡上的“评估公式”选项来查看公式如何工作。

简而言之,该公式通过创build两个数组按大小sorting来工作。 LARGE函数的“K”值是由ROW(INDIRECT序列)创build的数组

 {1;2;3;4;5;6} 

第二个回报

 {2;3;4;5;6;7} 

返回的两个数组值将会是:

 {99;98;9;5;5;1} {98;9;5;5;1;0} 

从另一个减去一个结果的差异数组,我们find最大值。

MAX(A:A) - LARGE(A:A,2)给出了最大和次最大值之间的差额,如果你的数字在A列。不要把这个公式放在A列。

A1A7的值以任意顺序排列!

B1中input:

 =RANK(A1,$A$1:$A$7,0)+COUNTIF($A$1:$A1,A1)-1 

并通过B7复制

C1中input:

 =INDEX($A$1:$A$7,MATCH(ROW(),B$1:B$7,0)) 

并通过C7复制

D2中input:

 =C1-C2 

并通过C7复制

最后在E1里input:

 =MAX(C:C) 

B表示列A中的值的sorting顺序。 C按sorting顺序包含列A的值。 D栏是区别, E1给出了所需的答案。 这里是一个例子:

演示