返回列表 上一主題 發帖

[發問] 請問該如何才能計算該欄最後五筆資料

回復 6# jak

我只會算最後五筆的資料…
=AVERAGE(OFFSET(K2,0,-1,1,-5))

TOP

回復 6# jak

終於解出來了,
5日均的公式:=AVERAGE(OFFSET(K2,0,-1,1,IF(3-COUNTA(1:1)<-5,-5,3-COUNTA(1:1))))
月均的公式:=AVERAGE(OFFSET(A2,0,1,1,COUNTA(1:1)-3))
這樣從第一天起到最後一天,應該都能算得出來

TOP

回復 9# jak


=AVERAGE(OFFSET(K2,0,-1,1,IF(3-COUNTA(1:1)<-5,-5,3-COUNTA(1:1))))

因為是要算往前推5天的資料所以要用offset,如果是直接定義的話,是這樣的:
=AVERAGE(OFFSET(K2,0,-1,1,-5))  
語意為:計算平均(K2那格,同一列,後一欄開始,抓取範圍:1列,抓取範圍:往左5欄)
可是如果是從第一天開始輸入資料,那5日均左邊就沒有五欄可抓,就變成亂碼了,所以要把-5改成變數
也就是用"IF(3-COUNTA(1:1)<-5,-5,3-COUNTA(1:1)"去取代-5
這樣一來如果只有前二天的資料,他就抓二天的平均,一直到超過五天之後,他才會自動抓最後五天的平均。

TOP

回復 11# jak

IF(X-COUNTA(1:1)<-5,-5,X-COUNTA(1:1)
你如果有了解這個公式的意義,那就可以自己計算了,
假設現在只有7/1這天的資料,那公式的最後一個數值就必須等於-1,
=AVERAGE(OFFSET(D2,0,-1,1,-1))
然後你自己在隨便一格輸入=COUNTA(1:1), 計算出來的值是5,
那你就能很清楚明白的算出X-COUNTA(1:1)=-1的X是多少了吧,
依此類推,7/2的時候,最後那個值就會變成-2,而COUNTA的值是6
X-6=-2
而當超過第5天開始,那個值就一定是固定為-5,
所以才要用IF(X-COUNTA(1:1)<-5,-5

TOP

回復 13# jak

不客氣啦,我本來也沒用過這個函數,也是有你的問題,才讓我去學習它的,這就是所謂的教學相長吧~

TOP

        靜思自在 : 君子立恆志,小人恆立志。
返回列表 上一主題