2017-05-29 59 views
0

我的循環:VBA worksheetfunction gamma_dist FOR..NEXT

For n = 1 To 30000 Step 1 
    a = m * n 
    b = delta^a 
    c = f1^(a - 1) 
    d = WorksheetFunction.Exp(-f1 * delta) 
    e = WorksheetFunction.Gamma_Dist(f1, a, 1, 1) 
    konvolucia = (b/e) * c * d 
Next n 

e正在顯示

運行error.'423' - 屬性或方法未找到

我可以問你問題在哪裏嗎?

回答

2

隨着錯誤消息

屬性或方法未找到

告訴你,這個問題是不存在WorksheetFunction稱爲Exp

如果您正在尋找定義爲exp功能:
Exp(n) =e調至n功率,其中e = 2.71828183…

然後用d = Exp(-f1 * delta)代替。


旁註
Gamma_Dist等待一個Boolean作爲最後一個參數:

Gamma_Dist(Arg1 as Double, Arg2 as Double, Arg3 as Double, Arg4 as Boolean) 

所以,你應該用TrueFalse,而不是作爲1最後一個參數。在VBA True中是-1False0因此不要使用1,即使0旁邊有任何內容轉換爲True時轉換爲布爾值。

+0

非常感謝你,我也有問題,此函數{對於x = 1到15步驟1 克= WorksheetFunction.Binom_Dist(F1,R,Q,0) hustota = G * konvolucia 接着X}的運行時錯誤1004 – Kristina

+0

請不要將問題發佈爲答案/評論。相反[編輯]你原來的問題,並添加你的變量的值是你用來運行此循環時發生錯誤?添加完整的錯誤信息以及它在哪一行發生。沒有看到代碼和知道價值,我們無法提供幫助。 –

+0

對不起,這是我上面評論中的錯誤編輯鏈接。請[編輯](https://stackoverflow.com/posts/44236269/edit)**您自己的原始問題**,並添加所有請求的數據。 –

相關問題