Excel 行と列の番号を指定してセルのアドレスを取得(ADDRESS関数)

2020年5月26日

ADDRESS関数は行と列の番号を指定して

セルを参照するためのアドレス(文字列)を取得する関数です。

単独では用途がほぼ使いませんがINDIRECT関数と併用して高い効果を発揮します。

この記事では関数の仕様と使用例、活用例を紹介します。

仕様

=ADDRESS(行番号,列番号,参照の種類,参照形式,シート名)
引数省略時の値説明
行番号省略不可アドレスを取得する行番号を数値で指定。
列番号省略不可アドレスを取得する列番号を数値で指定。
参照の種類1取得するアドレスが絶対参照か否かを指定
・1:絶対参照
・2:行のみ絶対参照
・3:列のみ絶対参照
・4:相対参照
参照形式TRUE取得するアドレスの形式を指定
・TRUE:A1形式で結果を取得
・FALSE:R1C1形式で結果を取得
シート名“"別のワークシートを使用する場合、シート名を指定
引数の詳細

使用例

行番号と列番号のみの基本的な使用例です。A1形式の絶対参照になります。

行番号と列番号のみの基本的な使用例

参照の種類と参照形式を変更した使用例です。

参照の種類と参照形式を変更した使用例

シート名を指定した形式です。

シート名を指定した形式

スピルを利用する方法とメリット

Office365やExcel2019以降ではスピルという形式で記述可能です。

これは複数セルに数式をコピーする場合に便利な機能です。

スピルの利用には何れかの引数を複数セルの範囲で指定します。

スピルでADDRESS関数を記述する例(F3セル)
スピルでADDRESS関数を記述する例(F3セル)

数式を入力するのは最初の一つのセルですが、

引数で指定した高さ分、数式がセルのコピーなしで自動拡大されます。

F3に指定したADDRESS関数がF10まで自動拡大
F3に指定したADDRESS関数がF10まで自動拡大

スピルを利用することで今回の例では、

F3セルに入力するだけでよいため(F4以降にコピーペーストが不要)

以下のメリットがあります。

  • 入力の手間が少ない(数式のセルが多いほど効果が大きい)
  • 数式を編集した時、コピー忘れのリスクがない(最初のセルを更新すると全セルに反映)
  • 絶対参照が不要
  • 途中に行を追加した場合、数式のコピー&ペーストが不要。行削除でも壊れにくい。

関連記事

活用例

条件付き書式で自分自身(カレント)のセルを指定する方法

ある文字数を超えたらセル色を変更して検知する方法

同じ列に重複データがある場合、セル色を変更して検知する方法

列番号を数字またはアルファベットで取得する方法

文字列による柔軟なセル指定を行う(INDIRECT関数)

INDIRECT関数と併用します。

関数の仕様と使い方の記事一覧