Bonjour,
je débute en VBA. Je cherche à calculer une matrice de variance covariance, mais pour éviter de le faire à la main (et pour éviter des erreurs), je souhaite le programmer en VBA. J'ai fait un code, mais il me génère une erreur. L'aide de microsoft étant du charabia pour moi, je m'adresse à vous.
Voici mon code :
Lorsque j'exécute la macro test(), j'ai l'erreur Objet requis (erreur 424) qui s'affiche. Quel est le problème ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 Option Explicit Function Covariance(ByVal plage1 As Range, ByVal plage2 As Range) As Double 'Renvoie : la covariance entre les données contenues dans la plage1 'et les données contenues dans la plage2 'Hypothèses : plage1 et plage2 contiennent des données de type numérique 'et sont de même longueur Covariance = WorksheetFunction.Covar(plage1, plage2) End Function Sub MatriceVCV(ByVal plage As Range) 'Modification : calcule la matrice de variance covariance 'de la matrice contenue dans "plage" et la stocke Dim colonne1 As Range, colonne2 As Range Dim MatriceVCV As Range Set MatriceVCV = Range("L3", "T11") For Each colonne1 In plage.Columns For Each colonne2 In plage.Columns MatriceVCV.Cells(colonne1.Column, colonne2.Column).Value = Covariance(colonne1, colonne2) Next colonne2 Next colonne1 End Sub Private Sub test() MatriceVCV (Range("B2:J5807")) End Sub
Je vous remercie.
Partager