Bonjour,
D'abord merci d'avance pour l'aide que vous allez m'apporter.
Je souhaite calculer le rendement pour différentes actions. Je dispose donc d'une feuille avec les différent cours.
Une colonne représente une action, chaque ligne une date.
La formule pour calculer le rendement d'une action à la date t est la suivante rdt = 100 * log (prix en t / prix en t-1)
Voici mon code :
Il fonctionne mais j'aimerai le rendre dynamique. C'est à dire que si je rajoute une action donc une colonne cela soit pris en compte c'est à dire que P et R sont redimensionnés ainsi que J.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Sub calcul_rendement() Dim i As Integer, j As Integer, P As Object, R As Object Set P = Range("Feuil1!H2:Feuil!1AF2141") Set R = Range("Feuil2!H2:Feuil2!AF2141") For i = 1 To 2140 For j = 1 To 25 R.Cells(i + 1, j) = 100 * Log((P.Cells(i + 1, j)) / (P.Cells(i, j))) Next j Next i End Sub
Là j'ai 25 actions, mais si une autre personne en rajoute une. Je souhaiterai que J = 1 to 26 et P/R vont de H2:AG2141.
J'ai pensé à demander à l'utilisateur de sélectionner la plage mais elle est très grande et c'est pas très pratique. Est-ce possible de dire que P va de H2 et s'arrête au moment où il n'y a plus de valeur sur la ligne et la colonne ?
Je sais pas si ce que je demande est faisable. Si vous avez des solutions à me proposer pour me mettre sur la voie.
Merci
Partager