Excel公式與函數之美11:小而美的函數之SMALL函數

SMALL函數求一組數值中第幾小的數值,其第1個參數指定數據組,第2個參數指定要求的第幾小的值,其基本用法如圖1所示。

圖1

一鍵直達 >> Excel函數學習37:SMALL函數

 

SMALL函數之美

SMALL函數的原理很簡單,但將其組合在公式中,能夠幫助我們按順序獲取數據,這可能就是SMALL函數的美妙之處。

 

結合ROW函數對數據排序

如圖2所示,在單元格C1中輸入公式:

=SMALL($A$1:$A$6,ROW(A1))

下拉至單元格C6,即將單元格區域A1:A6中的數字由小到大排列。

圖2

 

也可以選擇單元格C1:C6,輸入數組公式:

=SMALL(A1:A6,ROW(1:6))

結果相同,如圖3所示。

圖3

 

這樣,原數據區域A1:A6中的數據改變時,排序區域C1:C6會實時更新。

 

結合IF函數獲取數據的位置

如圖4所示,單元格區域A1:A6中放置示例數據,想要得到「完美Excel」在該區域第3次出現的位置,使用數組公式:

=SMALL(IF($A$1:$A$6="完美Excel",ROW($A$1:$A$6)-ROW($A$1) 1),3)

公式中:

$A$1:$A$6="完美Excel"表示單元格區域中的值與「完美Excel」相比較,得到邏輯值組成的數組{TRUE;FALSE;TRUE;FALSE;FALSE;TRUE}。

ROW($A$1:$A$6)-ROW($A$1) 1生成由單元格區域的行號組成的數字數組{1;2;3;4;5;6}。

IF函數得到數組{1;FALSE;3;FALSE;FALSE;6},作為SMALL函數的數據值參數,取第3個最小值即為6,表明「完美Excel」第3次出現在第6行。

圖4

 

注意到,SMALL函數忽略邏輯值。

 

在很多公式中都使用了該示例的原理,來獲取想要的數據的位置,然後獲取該數據。

 

結語

SMALL函數能夠實現數值動態排序,能夠在公式中提供數據的位置從而提取相應的數據,是這類問題的必備函數。

LARGE函數用法相同。


 

本文屬原創文章,轉載請註明出處。

歡迎在下面留言,完善本文內容,讓更多的人學到更完美的知識。

推薦閱讀:

八字的排序和計算公式其實並不神秘!
六大財務公式——投資項目財務可行性分析
如何才能看懂論文里的公式?
使用excel 數組公式的注意事項

TAG:公式 | 函數 | Excel公式 | Excel | 美的 |