Bonjour à tous!

Je suis en train de m'entrainer sur les userforms et mon code ne veut absolument pas marcher. Apres plusieurs messages d'erreur, il ne veut toujours pas me mettre un bon résultat. En ce moment il me met "Argument non facultatif" pour ma fonction pricer...

J'aurai besoin d'un oeil frais sur ce petit code


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
 
 
Function maturité()
 
    datetexte = CStr(jour.Value) & "/" & mois.Value & "/" & CStr(contenu_année.Value)
    maturité = (CDate(datetexte) - Date) / 365
 
End Function
 
 
 
Function pricers(s, k, r, sigma, t As Double) As Double
 
Dim d1 As Double
Dim d2 As Double
 
 
d1 = (Log(s / k) + (r + 0.5 * sigma ^ 2) * t) / (sigma * Sqr(t))
d2 = d1 - sigma * Sqr(t)
 
pricers = (s * WorksheetFunction.NormDist(d1) - k * Exp(-r * t) * WorksheetFunction.NormDist(d2))
 
End Function
 
Private Sub Pricer1_Click()
 
s = Val(cours.Value)
k = Val(strike.Value)
r = Val(rf.Value)
sigma = Val(volat.Value)
prix1.Value = Round(pricers(s, k, r, sigma, maturité()), 4)
 
 
End Sub

A savoir que les cours.value , strike.value ... correspondent à la valeur indiqué dans les userforms par l'utilisateur.

Merci!