Document
Dim i As Integer
Dim j As Integer
Dim l As Integer
Dim c As Integer
For l = 2 To 567
For c = 2 To 66
For j = 2 To 66
If Worksheets("Données").Cells(1, j) = Worksheets("Rendements").Cells(1, c) Then
For i = 3 To 567
If Worksheets("Données").Cells(i, 1) = Worksheets("Rendements").Cells(l, 1) Then
Worksheets("Rendements").Cells(l, c) = WorksheetFunction.Ln((Worksheets("Données").Cells(i, j) + Worksheets("Données").Cells(i, j + 1)) / Worksheets("Données").Cells(i - 1, j))
End If
Next i
End If
Next j
Next c
Next l
End Sub
'la boucle met un peu de temps a se terminer car calcule cellule par cellule '
Sub calcul_statistique()
Worksheets("Rendements").Activate
Dim var_cac
Dim beta
Dim titre
Dim rdt_cac
ReDim beta(1, 1)
ReDim var_cac(1, 1)
nb_col = Range(Range("b2"), Range("b2").End(xlToRight)).Cells.Count
nb_ligne = Range(Range("b2"), Range("b2").End(xlDown)).Cells.Count
'variance cac40
Worksheets("Données").Activate
Set cac40 = Range(Range("b3"), Cells(3 + nb_ligne, 2))
var_cac(1, 1) = WorksheetFunction.Var(cac40)
Cells(nb_ligne + 5, 2) = var_cac(1, 1)
Cells(nb_ligne + 5, 2).Select
Selection.Cut
Worksheets("Rendements").Activate
Cells(4 + nb_ligne, 1).Select
ActiveSheet.Paste
'calcul de beta
Set rdt_cac = Range(Cells(2, 2), Cells(nb_ligne + 1, 2))
For i = 1 To nb_col - 1
Set titre = Range(Cells(2, i + 2), Cells(nb_ligne + 1, i + 2))
beta(1, 1) = WorksheetFunction.Covar(rdt_cac, titre) / Cells(4 + nb_ligne, 1).Value
Cells(nb_ligne + 4, i + 2) = beta(1, 1)
Next i
'calcul de la variance des rdt
Dim var_rdt_titre
ReDim var_rdt_titre(1, 1)
Dim titre1
For j = 1 To nb_col
Set titre1 = Range(Cells(2, j + 1), Cells(nb_ligne + 1, j + 1))
var_rdt_titre(1, 1) =