youme225
Messages postés2Date d'inscriptionsamedi 10 mars 2012StatutMembreDernière intervention10 mars 2012
-
10 mars 2012 à 12:05
youme225
Messages postés2Date d'inscriptionsamedi 10 mars 2012StatutMembreDernière intervention10 mars 2012
-
10 mars 2012 à 17:21
Bonjour,
je suis un débutant total en ce qui concerne le VBA. J'essaye de faire la fonction de Black and Scholes (pour les options) mais j'ai qq problèmes.
j'ai ça comme code:
Sub options()
Dim d1 As Single
Dim d2 As Single
Dim r As Single
Dim vol As Single
Dim t As Integer
Dim C As Single
Dim X As Single
Dim S As Single
Dim Ln As Single
Dim NormSDist As Single
S = InputBox("Entrez le prix du sous-jacent")
X = InputBox("Quel est le prix d'exercice?")
vol = InputBox("Quelle est la volatilité?")
r = InputBox("Le taux sans risque")
t = InputBox("le temps jusqu'à l'échéance")
d1 = (1 / (vol * t ^ 0.5)) * Log(S / X) + (r + 0.5 * vol ^ 2) * t
d2 = d1 - vol * t ^ 0.5
C = S * NormSDist(d1) - X * NormSDist(d2) * Exp(-r * t)
MsgBox ("le Prix de l'option est de" & C & "euros")
End Sub
Mais apparemment VBA ne reconnait pas la fonction NormSDist. Quoi faire ?
Une autre question, est-ce possible de faire un userform qui regroupe les inputbox?
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 10 mars 2012 à 14:43
Bonjour,
Et également : fais attention au choix de la section ! VBA n'est pas VB.Net (la présente section) !
Maintenant :
- NormDist n'est en effet pas une fonction VBA, mais une fonction Excel - la plupart (et c'est le cas ici) des fonctions Excel sont utilisables sous VBA ===>> ouvre donc ton aide VBA sur le mot WorkSheetFunction et lis
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
NHenry
Messages postés15102Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention27 mars 2024159 10 mars 2012 à 13:32
Bonjour,
Quand tu postes un code, lis le point 2 de ma signature.
Regardes plutôt :
WorksheetFunction.NormSDist
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---