「address」タグアーカイブ

EXCEL2:INDIRECT攻略したい

INDIRECTという風変わりな関数に興味があります。二次的な、という意味を持つINDIRECTは、間接的にセル参照する機能を持つ検索関数で、二次関数ではなく、OFFICE Onlineサポートサイトでは、INDIRECT関数は「指定される文字列への参照を返す」と書かれています。
つまり、INDIRECT関数の引数の括弧には、=INDIRECT(A1)などとセル番地が入ることになると思います。A1セルに、表のどこか「セル番地」を文字列で入力しているとき、INDIRECT関数は、引数の参照セルに書かれたセル番地のデータを参照しています。

普通セル参照といえば、A1の値を参照するB1セルに =A1 と入力しますが、
INDIRECT関数の参照元で =A1とすると、数式ですので結果はエラーになります。参照元は文字列で、引数のように「セル番地」を入力するという事です。

また、SUM関数と組み合わせて、セル範囲の合計を計算します。
=SUM(INDIRECT(A1))
A1に、B1:B10 と引数の様に入力したセル範囲の合計値を表示します。
このセル範囲に名前を定義すると、A1に名前で置き換えた選択範囲を計算します。

あるいは、「指定される文字列への参照を返す」ので =INDIRECT(“A1”) と解説している教本の方が多いです。
“A1” と表記するときは、引数が文字列のことですので、A1セルの内容をそのまま参照しています。A1セルが文字列でなくても、数値でも、数値は数値としてそのままA1セルの値が参照されるようです。

参照元表は別シートでも、開いている別ブックでも可能という事です。

=INDIRECT(“A1”)  の場合、セルの絶対参照のように、行列にコピーしてもA1を参照しています。