返回列表 上一主題 發帖

請教陣列公式(依不同條件):求最大值、最小值及平均值(Max,min,Average)

請教陣列公式(依不同條件):求最大值、最小值及平均值(Max,min,Average)

附件中,項目個數可以用Sumproduct做出答案來。
但想要用Sumproduct的方法來套用做 Max時就有問題
請問有沒有簡易的方法做出資料來,現有資料是用手工做的

Data.zip (2.85 KB)

本帖最後由 jackdream 於 2010-8-16 15:17 編輯

試試看吧~

陣列公式(記得用 Ctrl + Shift + Enter)
最大值 {=MAX(($B$2:$B$33="豬")*($C$2:$C$33="肉")*($D$2:$D$33))}

用 sumproduct 方式(不需 Ctrl + Shift + Enter)
最大值=SUMPRODUCT(MAX(($B$2:$B$33="豬")*($C$2:$C$33="肉")*($D$2:$D$33)))

TOP

謝謝!jackdream ﹗
sumproduct 這個方法較合我用。
原來我是用成MAX(SUMPRODUCT,而不是用SUMPRODUCT(MAX。
這樣已可以解決我的問題了。

TOP

本帖最後由 老夏 於 2010-8-16 15:41 編輯

又是一個被誤導得使用者,不怪您
中了[劍魔]餘毒,走火入魔
************************************

Subtotal()取代24種函數功能
配合自動篩選使用
查詢局部統計資料
************************************
查詢全部局部統計資料
使用樞紐分析表

Data.rar (41.3 KB)

TOP

可是把 Max  改為  min 函數時,資料就不對了。
跑出來的是 0.00%
請問這是那埵陸暋D。

TOP

回復 5# Baracuda

可以參考老夏前輩的作法,將資料正規化再進行樞紐
若不改變資料格式,可參考陣列公式(Ctrl + Shift + Enter)
最大值
{=MAX(IF(($B$2:$B$33="豬")*($C$2:$C$33="肉"),$D$2:$D$33))}
最小值
{=MIN(IF(($B$2:$B$33="豬")*($C$2:$C$33="肉"),$D$2:$D$33))}
平均
{=AVERAGE(IF(($B$2:$B$33="豬")*($C$2:$C$33="肉"),$D$2:$D$33))}

TOP

G3=MAX(($B$2:$B$33=LEFT(F3))*($C$2:$C$33=MID(F3,2,2))*(($D$2:$D$33)))
H3=MIN(IF(($B$2:$B$33=LEFT(F3))*($C$2:$C$33=MID(F3,2,2))*(($D$2:$D$33)),($B$2:$B$33=LEFT(F3))*($C$2:$C$33=MID(F3,2,2))*(($D$2:$D$33)),100))
I3=AVERAGE(($B$2:$B$33=LEFT(F3))*($C$2:$C$33=MID(F3,2,2))*(($D$2:$D$33)))
以上都是陣列公式,往下COPY

TOP

jackdream  矩陣公式Work ,但是這個比較麻煩,要加工的部分比較多。
不過可以用。

ANGELA 你的公式看來全然不 Work

TOP

老夏
樞紐分析表的方式可以做到。
中了[劍魔]餘毒,走火入魔,這段恕在下才疏學淺,真的看不懂。

TOP

這個問題在各位的努力解答之下已經解決了。謝謝大家。
老夏前輩的方法我也知道可以用(但老夏前輩用的比我好)。
可是因為分「 原料」、「 成品名稱」是因為還要去追蹤原料的部分,所以才不把2個欄位合併。
所以老夏前輩的解答也是可用,只是要多做一次合併欄位的功夫。

TOP

        靜思自在 : 改變自己是自救,影響別人是救人。
返回列表 上一主題