Re: [算表] 自動分組後再做平均
上篇推文是排序後的式子
不排序的話式子較長(均陣列公式):
基本式
=AVERAGE(SMALL(A:A,(2*(ROW(1:1)-1)+ROW($1:$2))))
增加靈活度
=AVERAGE(SMALL(A:A,(2*(ROW(1:1)-1)+ROW(INDIRECT("1:"&2)))))
計算每組個數
=AVERAGE(SMALL(A:A,(COUNT(A:A)/5*(ROW(1:1)-1)
+ROW(INDIRECT("1:"&COUNT(A:A)/5)))))
此式若資料數不是5的倍數將會錯誤
因此也可考慮將各組個數寫明於其他格參照之
當然各組個數不一定要手寫(總數不為5倍數時)
也可以用算的來分配
想好規則就是
假設在H2寫好第一組的個數 則
=AVERAGE(SMALL(A:A,SUM(H$1:H1)+ROW(INDIRECT("1:"&H2))))
有個可能的問題是如果一個工作表有好幾個圖要畫
公式會複製貼上好幾遍
絕對參照會有點麻煩
都用相對參照(法二)
J2為累計個數
=AVERAGE(SMALL(A:A,J2+ROW(INDIRECT("1:"&H2))))
如此一來只要相對位置不變 即可複製到同一工作表各處去計算
至於分配各組個數的方法 大概就
第一~四組
=ROUND((COUNT(A:A)-累計個數)/(6-ROW(1:1)),0)
第五組
=COUNT(A:A)-累計個數
不知您是否真的需要處理不為5倍的情況
大略提一下
詳見檔案
http://2y.drivehq.com/p/AverageGroups.xls
※ 引述《pili2 (你聽,起風了)》之銘言:
: (若是和其他不同軟體互動之問題 請記得一併填寫)
: 軟體:
: Excel
: 版本:
: 2003
: 我有一個問題想問一下
: 困擾如下:
: XXX CCC 100
: ZZZ VVV 240
: AAA DDD 200
: DDD FFF 800
: RRR TTT 360
: QQQ RRR 450
: GGG HHH 220
: PPP OOO 500
: TTT YYY 320
: KKK UUU 410
: 我希望以數字那一排來做分組
: 比方說我希望依大小分成5組
: 也就是說最小的那一組為100和200
: 最大的那一組為500和800
: 並同時幫我算出告訴我每一組的平均
: 像是這裡的話希望顯示出的數字分別為150和650
: 大致上希望呈現
: XXX CCC 100
: AAA DDD 200 150
: ... ... ...
: ... ... ... ---->依序排列,且一個小組都有算出平均
: ... ... ...
: PPP OOO 500
: DDD FFF 800 650
: 平均的數字可以寫在200的右邊欄位或者是下方欄位都可以
: 嗯~
: 因為這圖表只是一個大概
: 但是我實際上的資料每一個工作表都有很多個數值
: 且每一個的資料量皆不相同
: 可能最少只有100的話,最大則可能到1000
: 希望有高手可以幫我解決這個問題
: 謝謝,萬分感激。
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 163.17.29.66
: 推 JieJuen:排序後參考 3916 #17IKTUR4 用COUNT計算筆數代入式中的"2" 11/07 22:37
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.164.51.73
※ 編輯: JieJuen 來自: 218.164.51.73 (11/07 23:51)
※ 編輯: JieJuen 來自: 218.164.49.72 (05/11 19:05)
討論串 (同標題文章)
Office 近期熱門文章
PTT數位生活區 即時熱門文章