返回列表 上一主題 發帖

[發問] 找出指定條件範圍的最少值

[發問] 找出指定條件範圍的最少值

type        no
A        8
A        2
A        3
B        4
B        5
D        6
C        7
A        1
E        9
A        10
D        11

找出指定最少值?       
A        1
B        4
C        7
D        6
E        9

其實爬文後發現樞紐分析表可簡單找出來, 但如果想用函數, 不知可不可以? 先謝謝了!

Book1.zip (7.92 KB)

本帖最後由 p212 於 2014-1-24 08:45 編輯

回復 1# ricky8751
定義名稱
x =Sheet1!$A$1:$A$12
y=Sheet1!$B$1:$B$12
儲存格E8輸入陣列公式=SMALL(IF(x=$D8,y,FALSE),1)
向下複製公式即可,請參考!

Fig_1.JPG (44.4 KB)

Fig_1.JPG

TOP

本帖最後由 samwang 於 2014-1-24 08:52 編輯

E8 陣列公式
= MIN(IF((A2:A12=D8)*(B2:B12),B2:B12,""))

TOP

本帖最後由 p212 於 2014-1-24 09:08 編輯

回復 3# samwang
謝謝samwang大的另解
建議將公式修改為
= MIN(IF(($A$2:$A$12=D8)*($B$2:$B$12),$B$2:$B$12,""))
是否較為適切?(阻止向下複製公式造成參照範圍變更)
請參考!

TOP

本帖最後由 p212 於 2014-1-24 09:25 編輯

回復 1# ricky8751
若主題的資料會隨時向下新增,則建議將2#的定義名稱修改成「動態名稱」:
x=OFFSET(Sheet1!$A$2,,,COUNTA(Sheet1!$A:$A)-1)
y=OFFSET(Sheet1!$B$2,,,COUNTA(Sheet1!$B:$B)-1)
請參考!

TOP

回復 4# p212


  謝謝您的指教,還是大大想的比較周到,公式是比較活用

TOP

感謝兩位的指教,原來這樣簡單,我竟然想得這麼複雜,謝謝

TOP

回復 4# p212


    發現這函數, 只能找到非 0 的最小值? 奇怪奇怪:dizzy:

TOP

本帖最後由 p212 於 2014-1-27 15:42 編輯

回復 8# ricky8751
搭配5#的動態名稱定義
陣列公式 =SMALL(IF(x=$D8,y,FALSE),1),依然可以正確地找到最小值(若項目對應值有「0」或負數者,則回應最小值為「0」或負數)。

TOP

回復 9# p212


    學會這個了, 謝謝

TOP

        靜思自在 : 人事的艱難與琢磨,就是一種考驗。
返回列表 上一主題