2010年10月26日 星期二

Excel-統計前幾個高分的平均成績

之前文章提過,如果想在幾個成績中(例如15個),只取前幾個來計算平均(例如10個),該如何處理呢?

儲存格P2:{=AVERAGE(IF(RANK(A2:O2,A2:O2)<=10,A2:O2))}

這是陣列公式,輸入完成要按 Ctrl+Shift+Enter 鍵。複製儲存格P1至儲存格P2:P5。

這個公式中,如果遇到含有沒有填內容的儲存格或是填入文字的儲存格,就會產生錯誤訊息。

如何來避免這個問題呢?

在公式中稍微修改一下,先利用ISNUMBER函數判斷是否為數字,才加入運算。

儲存格P8:{=AVERAGE(IF(ISNUMBER(A8:O8),IF(RANK(A8:O8,A8:O8)<=10,A8:O8)))}

這是陣列公式,輸入完成要按 Ctrl+Shift+Enter 鍵。複製儲存格P8至儲存格P8:P11。

這二個公式還有一個問題,當排到第10個成績的個數不止一個時,會變成加入平均的成績數目超過10個。如果以成績前10名的觀念來看,是可以計算超過10個的成績平均。但是如果一定要取10個成績來平均,則此公式則無法滿足。

沒有留言:

張貼留言

好康東東