0

列は次のとおりです。

Column A: Date
Column B: Prices of NASDAQ
Column C: Prices of ABC Stocks

金融ベータ式を実行したい(=COVAR(C1:C1000,B1:B1000)/VAR(B1:B1000). しかし、セルが常に最初の行から始まるのは望ましくありません...この数式を異なる行で計算できるようにしたいです。

たとえば、(=COVAR(C60:C1000,B60:B1000)/VAR(B60:B1000) 各数式を書き直すことなく、「開始日」というラベルの付いた新しいセルの日付を参照することで、その変更を行うことができるようにしたいと考えています。

=Cell("address")vlookup 内で数式をネストすることを考えていますが、これに問題があります。

誰でも私を助けてもらえますか?

4

1 に答える 1

1

INDEX通常INDIRECT、2 つの理由で

1.)INDIRECTは「揮発性」関数です。これは、ワークシートが変更されるたびに再計算されることを意味します - すべてが遅くなる可能性があります

2.) INDEX「C」のような列文字を「ハードコード」する必要がないため、列を追加または削除しても数式は機能します。

このようになります

=COVAR(INDEX(C:C,MATCH(Date,A:A,0)):C1000,INDEX(B:B,MATCH(Date,A:A,0)):B1000)/VAR(INDEX(B:B,MATCH(Date,A:A,0)):B1000)

...または、同じ関数を 3 回繰り返すのではなく、MATCHその部分だけを別のセルに入れるMATCHか、名前付き範囲にすることができます。たとえば、名前付きstartと式は次のようになります。

=COVAR(INDEX(C:C,start):C1000,INDEX(B:B,start):B1000)/VAR(INDEX(B:B,start):B1000)

于 2013-11-06T18:48:55.583 に答える