dianbobo
XLDnaute Junior
bonjour a tous
j'ai envi d'ecrire un code vba pour excel mais j'ai de gros problemes car je suis vraiment un amateur
voila je vais m'expliquer:
'je voudrai calculer le prix dune marchandise
'la date du jour est en A2
les dates de premiers coupons sont en colonne L a partir de la ligne 6 jusqu'a la derniere ligne non vide
'l'etude se fait donc ligne par ligne
lindice i designe ce qui se passe entre aujourd'hui et l'anné future i
exemple:
a la ligne 6 j'ai la date du premier coupon 11/04/2011
1) trouver le nombre de jours entre la date du jour et la date du premier coupon
2)convertir ce nombre de jours en mois :
3)trouver le noMbre d'année :
Code: Tout sélectionner
entre l'année en cours et la date future en colonne H A PARTIR DE LA LIGNE 6(les dates futures sont en colonne H)
*pour chaque année future i je dois faire la somme suivante et stocker le resultat en
[] c'est la partie entiere
merci de votre aide
j'ai envi d'ecrire un code vba pour excel mais j'ai de gros problemes car je suis vraiment un amateur
voila je vais m'expliquer:
'je voudrai calculer le prix dune marchandise
'la date du jour est en A2
les dates de premiers coupons sont en colonne L a partir de la ligne 6 jusqu'a la derniere ligne non vide
'l'etude se fait donc ligne par ligne
lindice i designe ce qui se passe entre aujourd'hui et l'anné future i
exemple:
a la ligne 6 j'ai la date du premier coupon 11/04/2011
1) trouver le nombre de jours entre la date du jour et la date du premier coupon
Code:
datedif(i)=(L(i),A2,"d")
2)convertir ce nombre de jours en mois :
Code:
X(i)=nbre de jour/30
3)trouver le noMbre d'année :
Code: Tout sélectionner
Code:
v=(datefuture-date du jour)/360
[v]=partie entiere de v
*pour chaque année future i je dois faire la somme suivante et stocker le resultat en
Code:
cells(i,11),i=6,..,jusqu'a la derniere ligne non vide:
cells(i,11)=somme(tf/(1+Tij)^Pij)+100/(1+Tn)^Pn j=1 à [v]+1
ou
tf=cells(i,10) pour i=6 ,jusqu'a la derniere ligne non vide
Tij=(y(i)*(sheets("feuil2").cells([v]+1,7).value+12*(j-1))+(30-y(i))*(sheets("feuil2").cells([v],7).value+12*(j-1)))/30
y(i)=(X(i)-[X(i)])*30
et
pij=X(i)/12+(j-1) pour j=1 à [v]+1
[] c'est la partie entiere
merci de votre aide