作者enjoy9003 (找人)
看板Visual_Basic
标题[VBA ] function与ByRef引数型态不符
时间Fri Mar 15 11:37:42 2013
附上原始码
--
Public Function BSoption(cp As String, s As Double, k As Double, t As Double,
sig As Double, r As Double) As Double
Dim d1 As Double
Dim d2 As Double
d1 = (Log(s / k) + (r + sig * sig / 2) * t) / (sig * Sqr(t))
d2 = d1 - sig * Sqr(t)
If cp = "C" Then
BSoption = s * cdf(d1) - k * Exp(-r * t) * cdf(d2)
Else
BSoption = k * Exp(-r * t) * cdf(-d2) - s * cdf(-d1)
End If
End Function
--
我的想让cp可以直接抓到某个位置的字元,但因为这样就会使得引数型态不符?
有没有办法可以使我的function使用上可以直接在excel上使用成这样:
=BSoption(C,50,50,1,0.25,0.06)
或者是:
=BSoption(A1,A2,A3,A4,A5,A6)
A1 A2 A3 A4 A5 A6
----------------------------
C 50 50 1 0.25 0.06
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 163.22.18.73
1F:→ enjoy9003:自己解答在funcution(加入byval 03/15 11:56