Excel~OFFSET関数でセル、セル範囲を取得しよう~エクセル
エクセルで基準セルから指定された行数、列数だけシフトした位置のセルやセル範囲を参照するOFFSET関数について説明します。
- OFFSET関数の書式はOFFSET(基準, 行数, 列数, [高さ], [幅]) になります。
- 基準は、シフトの開始位置となるセルやセル範囲を指定します。
- 行数は基準から何行シフトするかを指定します。
- 列数は基準から何列シフトするかを指定します。
- [高さ]は範囲を取得したい時に、基準から行数、列数シフトしたセルから下に何行分かを指定します。
- [幅]は範囲を取得したい時に、基準から行数、列数シフトしたセルから右に何列分かを指定します。
下の画像の例でセルD2にセルA4から1行、1列シフトしたセルのデータを表示したい場合はセルD2に=OFFSET(A4,1,1)と入力しEnterを押します。
基準はセルA4から1行、1列シフトしたセルのデータを表示したいのでA4になります。
行数はセルA4から1行シフトさせたいので1になります。
列数はセルA4から1列シフトさせたいので1になります。
[高さ]、[幅]は今回は単一セルを参照したいので省略しています。
つまりセルD2に=OFFSET(A4,1,1)と入力しEnterを押すとセルA4から1行、1列シフトしたセルはセルB5なのでB5の文字列"ばなな"が表示されます。
SUM関数との組み合わせ
下の画像の例でセルA2にデータの表の青いセルA5を基準として黄色範囲の足し算の結果を表示したい場合はセルA2に=SUM(OFFSET(A5,1,1,2,2))と入力しEnterを押します。
SUM関数の中にOFFSET(A5,1,1,2,2)が入っています。これはセルA5を基準に1行、1列シフトしたセルB6から下方向に2行、右方向に2列の範囲を意味するので黄色範囲のセルB6からセルC7の範囲になります。SUM関数に範囲を指定すると範囲内のセルを全て足し算するのでセルA2に足し算の結果28が表示されます。