看板 Visual_Basic 關於我們 聯絡資訊
各位板上的高手~~ 我想請問一下~~ 在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
youngswallow:Max是涵數嗎?有放在模組裡嗎?為什麼要加Application? 09/16 20:52
silence2279:要用函數的話改成Application.WorksheetFunction.Max 09/16 21:29
cilo:Application是用來引用excel裡面內建的函數 09/16 22:05