-
1 # 千萬別學Excel
-
2 # Excel輕鬆一課
在這裡提供一種較為簡單的方法:
思路:成績與平均成績比較,如果大於平均值,取成績;如果小於平均值,直接取成績的最大值,這樣就生成了一個數組,然後取這組陣列的最小值即可
這種方法最大的好處:無需排序,無需複雜計算,直接得到結果!
詳細步驟如下:
步驟一:使用if函式生成我們思路中的陣列{=IF(D3:D8-AVERAGE(D3:D8)>0,D3:D8,MAX(D3:D8))}得到陣列{75;91;80;91;91;87}
公式解讀:如果成績大於均值,那麼取成績值,否則取最大的成績值
(備註:選擇公式,按F9可檢視公式的計算結果)
步驟二:使用函式min求最小值{=MIN(IF(D3:D8-AVERAGE(D3:D8)>0,D3:D8,MAX(D3:D8)))} 因含有陣列,Ctrl+Shift+Enter三鍵結束
綜上,{=MIN(IF(D3:D8-AVERAGE(D3:D8)>0,D3:D8,MAX(D3:D8)))},一個簡單的公式輕鬆搞定!
-
3 # Excel小王子
Excel中如何求一組數的平均值我們可以用=AVERAGE(number1,number2,...)函式。
但是如何求大於平均值並最接近平均值的數同時返回其對應的資訊呢?
如題,我們如何求出大於平均值且最接近的平均值的數75呢?
針對這個問題,我們用SMALL+IF+AVERAGE三個函式的組合來解決。
E2輸入陣列公式:=SMALL(IF(B2:B7-AVERAGE(B2:B7)>0,B2:B7),1),即可求出大於並最接近平均值的數。
公式邏輯為:
1、用AVERAGE計算出平均值;2、用IF判斷所有數減去平均數是否大於0,如果大於就返回這個數,不大於就返回FALSE;3、用SMALL取出大於平均值的最小數。
要再返回這個數對應的成績評價就簡單了,我們可以直接用VLOOKUP就能得到結果。
當然這個問題也可以用一個函式公式,直接右拉完成,不過會稍微複雜點,E2輸入陣列公式:=INDEX(INDEX(B:B,N(IF(1,MATCH(SMALL($B2:$B7,ROW(1:6)),$B2:$B7,)))+1),MATCH(1=1,SMALL($B2:$B7,ROW(1:6))>AVERAGE($B2:$B7),))右拉即可,有興趣和基礎的朋友可以研究一下。
回覆列表
如何自動提取大於平均值的第一個數值?其實答案很簡單,在B11單元格輸入以下公式:=INDEX(SMALL(B4:B9*(B4:B9>AVERAGE(B4:B9)),ROW(1:6)),MATCH(AVERAGE(B4:B9),SMALL(B4:B9*(B4:B9>AVERAGE(B4:B9)),ROW(1:6)),1)+1,1),並三鍵(CTRL+SHIFT+ENTER)輸入陣列公式。公式解析:第1步,透過B4:B9*(B4:B9>AVERAGE(B4:B9))獲得大於平均值的資料構成的陣列{75;0;80;91;0;87};第2步,透過SMALL函式升序排序{0;0;75;80;87;91};第3步,透過INDEX+MATCH函式組合獲得大於平均值的第一個數值。詳見動圖詳解。