Pb VBA/Excel

Résolu
cs_MEDI93 Messages postés 4 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 30 juillet 2008 - 29 juil. 2008 à 13:53
cs_MEDI93 Messages postés 4 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 30 juillet 2008 - 30 juil. 2008 à 19:49
[E:\Formule_A_Developper.JPG Formule]
 à developper:



 
<?xml:namespace prefix = v /??><v:shapetype id="_x0000_t75" body="" c<="" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">Nk suit une loi de Poisson de paramètre lambda=3<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /??>

Xj suit une loi Lognormale de paramètres mu=8 et sigma=1,2

J’ai développé une fonction VBA/Excel suivant :

= = = = = = = = = = = = = = = = = = = = = = = = = = = = = 

Function Calc_Simul(N As Integer) As Double

 

'N : nb iterats

 

Dim Nk As Double

Dim X As Double

Dim A As Double

 

' N = 250

Lam = 3

Mu = 8

Sig = 1.2

Calc_Simul = 0

 

For k = 1 To N

    Nk = WorksheetFunction.Loi.Poisson(Rnd(), Lam, vrai)

    If Nk <> 0 Then

        For j = 1 To Nk

            X = X + WorksheetFunction.LogNormDist(Rnd(), Mu, Sig)

        Next j

        Else: X = 0

    End If

    A = A + X

Next k

    Calc_Simul = A

   

End Function

 = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

 

Mais lorsque j’exécute ce programme dans Excel j’obtiens : #ERREUR !

Merci de m’aider à résoudre ce pb.

Merci d'avance.
Crdt,
MEDI95

</v:shapetype>

7 réponses

us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
29 juil. 2008 à 14:15
Bonjour,

Forcément :
WorksheetFunction.Loi.Poisson(Rnd(), Lam, vrai)
n'existe pas !

mais la syntaxe :
WorksheetFunction.Poisson(Rnd(), lam, True)

ensuite, je ne regarde pas sur le fond, mais cela me parait être très juste non plus...

Amicalement,
Us.
3
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
29 juil. 2008 à 14:21
thème topic : déplacé de VB6 vers VBA
0
cs_MEDI93 Messages postés 4 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 30 juillet 2008
30 juil. 2008 à 18:34
Salut US,



<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
 




Merci bcp pour votre ide mais  j’avais corrigé auparavant cette erreur mais mon pgrm ne tourne tjs pas !


Peux-tu m’indiquer stp d’autre pistes ou une autre façon de programmer cette formule en VBA/Excel ?



 




Merci d’avance.


<?xml:namespace prefix = v /??>
<v:shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" c<="" body="">

Très amicalement,
MEDI</v:shapetype>
0
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
30 juil. 2008 à 19:03
bah... l'ennui c'est que je ne vois pas ce qu'il est sensé faire... C'est même pour ça que le fond ne me semblait pas très juste...

Amicalement,
Us.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_MEDI93 Messages postés 4 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 30 juillet 2008
30 juil. 2008 à 19:30
le but c'est de pricer la formule "A", je l'ai fais avec Scilab (logiciel comme Matlab) ca marche bien mais avec Excel/BVA  j'ai des petits soucis!
J'essaie de le corriger aujourd'hui.

Merci.
Très amicalement,
MEDI
0
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
30 juil. 2008 à 19:38
"pricer" ? ... ah, bon...

Amicalement,
Us.

PS : Dans Google, pour "pricer formule" j'obtiens "Leader Price"...
0
cs_MEDI93 Messages postés 4 Date d'inscription mardi 29 juillet 2008 Statut Membre Dernière intervention 30 juillet 2008
30 juil. 2008 à 19:49
Pour moi "pricer" c'est programmer une formule mathématique en utilisant un langage informatique: Excel, Scilab, Matlab, C/C++, C#, ...etc.

Amicalement,
MEDI
0
Rejoignez-nous