Excel で指定した合計に達するまで値を合計する方法

Excel で指定した合計に達するまで値を合計する方法

1 つのセル (A1) にしきい値を設定し、それをセル追加の基準として使用します。

私が

A1 - 10

A2 - 4

A3 - 2

A4 - 3

A5 - 4

A6 - 6

A1(しきい値)に基づいてセルを追加したい。

A1が10の場合、A2:A5を加算すると合計は13になります。

A1が9の場合、A2:A4を加算すると合計は9になります。

SUM式は

=SUM(OFFSET($A$2,0,0,MAX(INDEX((SUBTOTAL(9,OFFSET($A$2, 0,0,ROW(1:5),1))<$A$1)*ROW(1:5),,))+1,1))

しかし、ROW 数式で設定された間隔で合計に到達できない場合に問題が発生します。

この例では、ROW を ROW(1:5) に設定し、A1 を 14 に設定すると、19 になります。したがって、最大 ROW に達した場合でも、数式は追加を続けます。

どうすればこれを止められるでしょうか?

/アスガー

答え1

A1しきい値と値を持つセルが5つしかない場合は、この数式を使用できます。A7

=IF(A2>=A1,A2,IF(SUM(A2:A3)>=A1,SUM(A2:A3),IF(SUM(A2:A4)>=A1,SUM(A2:A4),IF(SUM(A2:A5)>=A1,SUM(A2:A5),SUM(A2:A6)))))

あまりエレガントではない(そして、はるかに大きなデータセットに拡張可能ではない)が、うまく機能するはずだ。

現状では、OP で要求されたとおりに動作します (13 または 9)

関連情報