[VBA ] 請問VBA可以引用函數到迴圈中嗎?

看板Visual_Basic作者 (兵)時間19年前 (2006/09/16 19:29), 編輯推噓3(300)
留言3則, 3人參與, 最新討論串1/4 (看更多)
各位板上的高手~~ 我想請問一下~~ 在VBA中可以引用函數到迴圈中嗎? 例如:(這我從我的程式終截錄出來的一段) Public Sub a() For i = 1 To path sT = simulation_stock(s, r, sigma, t) c_payoff = Application.Max(sT - k, 0) p_payoff = Application.Max(k - sT, 0) sum_c = sum_c + c_payoff sum_p = sum_p + p_payoff Next i End Sub Public Function simulation_stock(s As Double, r As Double, sigma As Double, t As Double) As Double Dim j As Integer Dim a, a1, sT As Double a1 = 0 For j = 1 To 12 a1 = a1 + Rnd Next j a = a1 - 6 sT = s * Exp((r - sigma ^ 2 / 2) * t + sigma * Sqr(t) * a) simulation_stock = sT End Function 為何VBA會給我錯誤的訊息(如下)~~ 編譯錯誤: ByRef 引數型態不符 是不是因為VBA不能夠將函數引用到迴圈中呢? 麻煩各位高手幫個忙!! 謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.139.220.180

09/16 20:52, , 1F
Max是涵數嗎?有放在模組裡嗎?為什麼要加Application?
09/16 20:52, 1F

09/16 21:29, , 2F
要用函數的話改成Application.WorksheetFunction.Max
09/16 21:29, 2F

09/16 22:05, , 3F
Application是用來引用excel裡面內建的函數
09/16 22:05, 3F
文章代碼(AID): #152-0YW- (Visual_Basic)
文章代碼(AID): #152-0YW- (Visual_Basic)