2017-10-20 25 views
0

J'ai créé un classeur comportant trois colonnes principales. La colonne A contient les dates à un niveau hebdomadaire. La colonne B contient les données pour une variable et la colonne C contient les données pour la deuxième variable.Ajustement des corrélations en fonction d'une cellule de référence de plage de dates

1/16/2012 3,317 5,258,000 
1/23/2012 3,535 8,965,000 
1/30/2012 3,663 9,527,000 
2/6/2012 3,629 9,127,000 

Je calcule ensuite des corrélations basées sur ces deux variables. Je m'intéresse, cependant, de manière à ajuster automatiquement la plage de dates pour laquelle les corrélations sont calculées en fonction de deux cellules de référence - une avec une date de début et une avec une date de fin. Je pense que cela nécessiterait des fonctions d'imbrication dans la formule correl().

Ma première tentative de résolution du problème ressemble à ceci:

=correl(CELL("address",INDEX(A8:C295,MATCH(P2,$A$8:$C$295,0),4)):CELL("address",INDEX(A8:C295,MATCH(P,$A$8:$C$295,0),4)), CELL("address",INDEX(A8:C295,MATCH(P2,$A$8:$C$295,0),5)):CELL("address",INDEX(A8:C295,MATCH(P3,$A$8:$C$295,0),5))) 

P2 cellulaire est la date que je veux que les corrélations commencent. La cellule P3 est la date de fin. La solution actuelle ne semble pas fonctionner car la fonction CELL renvoie la valeur de la cellule en tant que variable de texte. Est-ce que quelqu'un sait comment compléter ceci ou une méthode différente pour atteindre mes objectifs?

Encore une fois, je veux juste être en mesure d'ajuster quelle période les corrélations sont en cours d'exécution, par exemple, la plage de dates actuelle est 12/26/2011-6/26/17. Je pourrais vouloir regarder seulement la corrélation pour une partie de 2016, donc je voudrais ajuster les dates de début et de fin dans les cellules de référence (P2 et P3 dans la formule ci-dessus) afin que la corrélation soit calculée pour la plage de temps spécifiée. Il serait alors facile d'évaluer les corrélations pour de nombreuses plages de temps car seules les cellules de référence auraient besoin d'être mises à jour.

Répondre

1

Débarrassez-vous de la partie Cell("Address",:

=CORREL(INDEX(B:B,MATCH(P2,A:A,0)):INDEX(B:B,MATCH(P3,A:A,0)),INDEX(C:C,MATCH(P2,A:A,0)):INDEX(C:C,MATCH(P3,A:A,0))) 

Maintenant, le ,0 dans le troisième critère attend une correspondance exacte. Si vos données sont triées dans la colonne A, alors vous pouvez vouloir ,1 à la place pour trouver où elle correspond et pas une correspondance exacte.