-1

特定の数のセルを自動的に合計できるようにしたいスプレッドシートに取り組んでいます。たとえば、参照セルに 120 または 100 を入力すると、Excel は収益列の上位 120 または 100 セルの合計を表示します。これを行う方法はありますか?単純に「top120revenue」や「top100revenue」などセルの範囲に名前を付けることも考えましたが、静的であるだけでなく、27 枚のシートを扱う場合も複雑です。数式が存在する場合は、セル範囲のラベルを変更するのではなく、シート参照を変更する方が簡単です。答えは VBA にあるかもしれませんが、私は決してその専門家ではありません。

誰かが助けてくれることを願っています!?

4

2 に答える 2

3

上位n個のセルを位置的に意味しますか、それともn個の最高値を意味しますか?前者の場合は、INDIRECTよりも少し堅牢なINDEXを使用します。

=SUM(A1:INDEX(A:A,B1))

n個の最大値を意味する場合は、

=SUMPRODUCT(LARGE(A:A,ROW(INDIRECT("1:"&B1))))

于 2013-01-07T10:11:13.323 に答える
0

ここであなたの質問に対する答えを見つけたと思います。関数を使用しますINDIRECT()

例:columnAがデータを保持しB1、値を含む参照セルである場合100、以下の数式はcolumnの最初の100個の値の合計を示しますA

=SUM(A1:INDIRECT("A"&B1))

これは次のように解釈されます。

=SUM(A1:A100)
于 2013-01-07T09:14:52.643 に答える