Excel、配列は可能か?条件付きステップの計算方法が分からない

Excel、配列は可能か?条件付きステップの計算方法が分からない

数字の行が 2 つあり、1 と 2 は GZ から始まります。次の値を計算します。


(G2-G1、ゼロより大きい場合) を加算...
(H2-H1、ゼロより大きい場合) を加算...
(I2-I1、ゼロより大きい場合) を加算...

zまでずっと。

sumif をいじっていますが、正しい方向に進んでいるかどうかはわかりませんが、正しい結果が得られません。

ヘルプ!

答え1

次のように配列数式で囲むことができます。

=SUM(IF(G2:Z2 - G1:Z1 > 0, G2:Z2 - G1:Z1, 0))

次に、配列数式として入力するには、 を押しながら をSHIFT押します。CTRLENTER

正しく実行すると、セルを選択すると中括弧で囲まれます。

{=SUM(IF(G2:Z2 - G1:Z1 > 0, G2:Z2 - G1:Z1, 0))}

中括弧を入力しないことに注意してください。


ちなみに、MAXこのような場合には、通常、関数を使用して 0 をテストすることをお勧めします。これにより、式が次のように簡略化されます。

=IF(G2:Z2 - G1:Z1 > 0, G2:Z2 - G1:Z1, 0)

これに対して:

=MAX(G2:Z2 - G1:Z1, 0)

MAXただし、この関数は と同様に配列を集計するため、配列数式では機能しません。SUMつまり、この場合は、最初に の最大値を求めG2:Z2 - G1:Z1、次にその最大値と 0 の間の最大値を求めますが、これは明らかに、私たちが試みていたことではありません。

答え2

それはまさに次のことではないでしょうか:

=SUM((G2:Z2-G1:Z1)*(G2:Z2>G1:Z1))

これは配列数式なので、Ctrl+ Shift+で確認する必要がありますEnter

関連情報