[ Elite SAS @ 15.06.2009. 16:56 ] @
POzdrav svima, Ja se bavim ekonomijom i potpuni sam pocetnik u programiranju. Medjutim treba da uradim neki projekat u VBA. U produzetku vam saljem koji sam napisao i koji radi u excelu.Medjutim trebalo bi da mi variabla war ima najvise dve decimale.POkusao sam to da uradim sa Math.round ali nije islo. Interesuje me da li neko zna sta i gde tacno (u kodu) da napisem da bi dobio war variablu samo sa dve decimale. Jako bi mi znacila pomoc. Veliki pozdrav i hvala unapred Code: Sub Button1_Click() Dim S As Double: S = Cells(5, 3).Value Dim r As Double: r = Cells(6, 3).Value Dim T As Double: T = Cells(7, 3).Value Dim sig As Double: sig = Cells(8, 3).Value Dim cap As Double: cap = Cells(9, 3).Value Dim ns As Double: ns = Cells(10, 3).Value Dim i As Long If S <= 0 Or T < 0 Or sig <= 0 Then GoTo error_label For i = 5 To 25 Dim X As Double: X = Cells(i, 10).Value If X <= 0 Then GoTo error_label Dim PvX As Double: PvX = X * Exp(-r * T) Dim sig_rt As Double: sig_rt = sig * Sqr(T) Dim d1 As Double: d1 = Log(S / PvX) / sig_rt + 0.5 * sig_rt Dim BS As Double Dim war As Double 'value of warrants Dim nw As Double 'number of warrants BS = S * Application.NormSDist(d1) - PvX * Application.NormSDist(d1 - sig_rt) war = BS - (cap / ns) nw = cap / war If BS <= 0 Then BS = 0 If war <= 0 Then war = 0 If nw <= 0 Then nw = 0 Cells(i, 12).Value = war Cells(i, 17).Value = war Cells(i, 11).Value = nw Cells(i, 14).Value = BS Next i Exit Sub error_label: Beep 'To annoy the user MsgBox prompt:="Error encountered: Certain values cannot be a negative " & Err & " " & Error(), _ Buttons:=vbCritical, _ Title:="Problem" End Sub [Ovu poruku je menjao Aleksandar Vasic dana 15.06.2009. u 19:06 GMT+1] [Ovu poruku je menjao Aleksandar Vasic dana 15.06.2009. u 19:06 GMT+1] |