特定の行から下の列を合計する 質問する

特定の行から下の列を合計する 質問する

簡単そうに見えますが、Excel の数式で列の最後までの範囲を定義する方法が見つかりません。

たとえば、この数式 SUM(C:C) を使用して、列 C にあるすべての数値を合計できます。ただし、ページの上部にはタイトルと列ヘッダーがあるため、範囲を 6 行目から開始したいと思います。SUM(C6:C) でそれができると思いましたが、Excel では機能しません。

これは、将来ドキュメントに何行のデータを追加しても、SUM が常に正しくなるようにするために必要です。

ありがとう。

ベストアンサー1

=Sum(C:C)-Sum(C1:C5)

すべてを合計してから、不要なセルの値の合計を削除します。Volatile Offset、Indirect、またはArrayは必要ありません。

この方法が気に入らない場合は、楽しみのために次の方法も使用できます。

=SUM($C$6:INDEX($C:$C,MATCH(9.99999999999999E+307,$C:$C))

上記の数式は、C6 から、一致する数値が見つかった C:C の最後のセルまでの合計のみを計算します。これも非揮発性ですが、コストがかかり、ずさんだと思います。とにかくこれを好む場合に備えて追加しました。

列内の最後のテキスト値を使用してテキストに対して CountA のような関数を実行したい場合は、次のようにします。

=COUNTIF(C6:INDEX($C:$C,MATCH(REPT("Z",255),$C:$C)),"T")

次のような他の組み合わせも使用できます。

=Sum($C$6:$C$65536) 

または

=CountIF($C$6:$C$65536,"T") 

上記はExcel 2003以前では要求どおりに動作します。

=Sum($C$6:$C$1048576) 

または

=CountIF($C$6:$C$1048576,"T")

どちらもExcel 2007以降で動作します

上記のすべての関数は、最後の値の下の空白の値をすべて無視します。

おすすめ記事