Function caplet(Sett_d As Date, from_d As Date, to_d As Date, Strike As Double, vola As Double, Date_v As Object, PV_v As Object, underrate As Double) As Double ' Valuation of caplets (given dates and pv's) Dim T1 As Double, T2 As Double T1 = Application.Days360(Sett_d, from_d) / 360 T2 = Application.Days360(Sett_d, to_d) / 360 Dim r As Double, d1 As Double, d2 As Double, zwi As Double r = underrate d1 = (Log(r / Strike) + 0.5 * vola ^ 2 * T1) / (vola * T1 ^ 0.5) d2 = d1 - vola * T1 ^ 0.5 zwi = r * Application.NormSDist(d1) - Strike * Application.NormSDist(d2) caplet = inter2(Date_v, PV_v, from_d) * zwi * (to_d - to_d) / 360 * 100 End Function