返回列表 上一主題 發帖

加權平均數VBA

加權平均數VBA

請問各位大大,如何寫出加權平均數的VBA

由於加權平均數循環計算,想要嘗試的寫,但是有很多語法不清楚,不會用特別專業只會簡單的語法使用。
想詢問以下語法在VBA要怎麼打

計算三年(365*3筆資料)的周一到周七算出一個加權平均數
1、如何抓出周一到周七數值的平均數
2、平均值在減掉原本的數算出絕對距離
3、抓出周一到周七最大值與最小值然後減去平均值
4、在VBA使用ln、Exp

回復 1# 518587


各位大大,拜託幫幫我~~

我已經寫好了!!!
但是很奇怪

可以跑但是一直出錯,也不知道是哪裡的原因

而且如果把工作表裡面的D到K欄的資料全刪掉,就完全不能跑了...

可否幫我看看到底是哪裡出問題了呢?!!!!
附件有檔案
問.rar (62.02 KB)

TOP

回復 2# 518587


    問題

為什麼每次點的答案都不一樣呢?!

TOP

回復 4# GBKEE


  對不起,不太對!是我說明的不清楚...不好意思!!

那我說明整個流程好了!

要算出"週加權平均數"(星一到星期七)

1.先計算周一到周七的平均數=AvgOld                      (出現一個數)
2.將原本數量減掉AvgOld=Xik 加上絕對值                  (出現七個數)
3.找出週一到周七最大值減掉AvgOld=Dpk                  (出現一個數)
4.找出週一到周七最小值減掉AvgOld=Dnk (絕對值)      (出現一個數)
5.Dnk/Dpk=Ri                      (出現一個數)
6.ck=(-(Dpk^2)/ln(Ri))                      (出現一個數)
7.f=exp(-(Xik^2)/ck)                            (出現七個數)
8.W=f/f的加總                      (出現七個數)
9.AvgNew=SUMPRODUCT(W*原始數量)                               (出現一個數)
10.如果 AvgOld-AvgNew>0.1 (加上絕對值)的話 ,新的平均值就必須取代舊的,然後回到第二步重複計算到小於0.1



這是我要寫的語法流程,不知道說明可以嗎!?
拜託你了!!!!!!!

TOP

回復 6# GBKEE


以新算出來的加權平均取代原本的加權平均數
然後再繼續算新的加權數與數職的距離...等繼續算下去,最後又會有一個加權平均數算出來,
然後在與上次的加權數比較,誤差<0.1就停止,如果>0.1就在重複做

是這樣的意思!!!!

TOP

回復 6# GBKEE


  我最後改成這樣,但是為什麼沒有往回跑再重新計算呢?!是哪裡有錯嗎?!
請版大麻煩你幫我看看~~~~~!!!!

這是就是上一個回復的意思。

       If Abs(.Cells(1, 2) - .Cells(1, 10)) > 0.1 Then
            Cells(1, 11) = Abs(.Cells(1, 2) - .Cells(1, 10))
            Cells(1, 2) = Avg
             GoTo A
        End If


問D欄不適應該是Cells(X,4)嗎?!怎麼是Cells(X,2)呢?!

TOP

回復 6# GBKEE


不好意思,又出現了一些問題
請問一下
我將VBA程式碼貼到其他的地方無法執行,
怎麼樣才可以讓每個工作表都可以執行這段程式碼?!

TOP

回復 10# GBKEE


不好意思!!!!
我加上那個IF語法後vba都無法回應是怎麼了嗎?!
為什麼會這樣呢?!

問最後一個可以讓語法可用在各個工作表的語法要放在哪裡呢?!

TOP

回復 10# GBKEE


不好意思,我還是用不出來
不知道能不能請版大幫幫我,看一下到底哪出問題以及加入能夠讓各工作表都可以使用的語法

拜託拜託.....!!!!

TOP

回復 13# GBKEE


版大,你好!!!!
對不起,我的問題這麼多....一直麻煩版大真的很不好意思!!!

附件有附上檔案,出現了以下的問題:
1、我在最上面加入了欄位的字串名稱,但是為什麼只出現L、M欄的字串
2、版大如果下在開啟後執行是可以跑得,但是如果把下面的判斷式的註解拿掉,開始執行判斷式就會出現問題
       出現的問題有
      (1) 工作表1的那是直接用手打計算出的結果,跟VBA跑出來(工作表5)的結果不相同,為什麼呢?!是因為VBA計算數值不一樣嗎?
      (2)執行的時候,他停不下來,必須強制停止,怎麼樣才能夠讓他自動停止?
      (3)執行停止後,查看程式結果,上面有計算出來,但是下面到了一個地方以後全部都沒有出現,為什麼呢?!






問.rar (82.92 KB)

TOP

        靜思自在 : 得理要饒人,理直要氣和。
返回列表 上一主題