Home » Excel(エクセル)の関数・数式の使い方 » 検索・行列 » SUM関数で合計する範囲をセルから指定するには-INDIRECT関数

SUM関数で合計する範囲をセルから指定するには-INDIRECT関数

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

「オートSUMのセルを別のセルで参照」
「オートSUMのセル範囲を指定」
という検索が、このサイト・インストラクターのネタ帳で行われていました。

例えば、A1:A10セルの合計を計算するなら
「=SUM(A1:A10)」
という数式を入力すればOKです。

そうではなく、合計する範囲を簡単に変えるために、下図のようなことをしたいということかな、と推測しています。

SUM関数で合計する範囲をセルから指定するには-INDIRECT関数

例えば、C1セルに「A10」と入力したときはD1セルにA1:A10セルの合計を、「A5」と入力したときにはA1:A5セルの合計を計算するには、どのような数式にすればいいのかを、
「オートSUMのセルを別のセルで参照」
「オートSUMのセル範囲を指定」
という検索をなさった方は探していたのかと想像しています。

[スポンサードリンク]

INDIRECT関数を使って指定されたセルまでの合計を求める数式のサンプル

こういうときは、INDIRECT関数です。
▼操作概要:合計する対象をセルから指定する
※A1セルから、C1セルで指定されたセルまでの合計をD1セルに計算する例
D1セルに
  =SUM(A1:INDIRECT(C1))
という数式を入力する

INDIRECT関数は、単なる文字列を、数式で扱えるセル参照にしてくれる関数です。

C1セルに「A10」という文字列が入力された場合、「INDIRECT(C1)」はA10セルへの参照とみなされ、D1セルに入力した、
「=SUM(A1:INDIRECT(C1))」という数式は、
「=SUM(A1:A10)」という意味になるので、A1セルからA10セルまでの合計が計算されます。

INDIRECT関数を使って指定された行までの合計を求める数式のサンプル

上記のサンプルのような「A10」といったセル番地ではなく、「10」のように行番号だけを入力したいという要望も、実務では出てきそうです。
この場合は以下のような数式です。
▼操作概要:合計する対象セルの行をセル参照で指定する
※A1セルから、C1セルで指定された行までの合計をD1セルに計算する例
D1セルに
  =SUM(A1:INDIRECT("A" & C1))
という数式を入力する

C1セルには「10」のように数字だけが入力されるので、INDIRECT関数の引数を「"A" & C1」とすればOKです。

[スポンサードリンク]

Home » Excel(エクセル)の関数・数式の使い方 » 検索・行列 » SUM関数で合計する範囲をセルから指定するには-INDIRECT関数

「検索・行列」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.