Bonjour,

Je m'aperçois que j'aurais très certainement du poster ma question sur ce forum là plutôt qu'ici : http://www.developpez.net/forums/d15...ion-array-vba/
Peut-on déplacer la discussion ?

Je m'interroge sur la possibilité ou non de calculer une corrélation dans un array VBA ?
Par exemple, je créé un array de n lignes et 2 colonnes. Est-il possible de calculer la corrélation des deux colonnes de l'array ? Jusqu'ici j'affichais les résultats sur une feuille excel avant de faire la corrélation. Mais cela prend évidemment du temps, très certainement inutilement.

Exemple:

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
dim rng as range, c as range
dim n as integer, i as integer
 
set rng = range(cells(1,1),cells(1,1).end(xldown))
 
for each c in rng
   if c < 0 then
         i=i+1
   end if
next c
 
redim tab(i,2) as double
 
for each c in rng
   if c < 0 then
         tab(n,1) = c.value
         tab(n,2) = c.offset(0,1)
         n=n+1
   end if
next c
Je souhaiterais maintenant effectuer la corrélation des éléments de la 1ère et 2ème colonne de l'array "tab".
Peut-on le faire directement ? Je ne vois pas comment utiliser le "worksheetfunction.correl" dans ce cas-là. Ou bien dois-je remettre les données de "tab" sur une feuille excel ?

D'avance merci