ADDRESS関数の構文解説 -セルのアドレスを取得 -DL有-

ADDRESS関数の構文解説 -セルのアドレスを取得 -DL有-のアイキャッチ画像

本記事はADDRESSを解説します。
ADDRESS関数はEXCEL 365、EXCEL 2010以降で利用可能です。

EXCELのADDRESSは、「アドレス」と呼びます。
セルのアドレスを取得できる関数です。

Microsoft Excelの「検索/行列関数」のカテゴリに属します。

こんな時に便利!

ADDRESS関数を使用しないと、
特に大規模なデータシートでセルの位置を動的に参照することが難しくなります。

ADDRESS関数を使うことで、セルの位置を文字列として動的に生成できます。 別の関数と組み合わせて使うケースが多いかもしれません。

別関数との組み合わせはいずれ紹介したいと思います

ADDRESS関数の解説

解説を読む前に、巻末の参考記事もチェックしておくと良いため、時間があれば覗いてみてください。

ADDRESS関数とは

ADDRESS関数とは,[関数の挿入]ダイアログボックス

[関数の検索]のテキスト内に、「ADDRESS」と入力し、[検索開始]をクリックすると、関数がヒットします。
詳細の使用法に興味のある方は巻末の参考記事をご拝読ください。

指定したセルの参照を文字列の形式で返します

[関数の挿入]ダイアログより

ADDRESS関数は、指定された行番号と列番号からセルのアドレスを取得できるEXCELの関数です。

「アドレス」という名称は英語で「位置」や「場所」を指す言葉から来ており、
セルの位置を指し示す機能を持っています。

ADDRESS関数の構文

[関数の引数]ダイアログボックス]によるADDRESS関数の引数

=ADDRESS(行番号, 列番号, [参照の種類], [参照形式], [シート名])
※[]は省略可能です

指定した行番号列番号から[参照の種類]のタイプでセルアドレスを生成する機能を持っています。

[シート名] を指定でき、[参照形式]も設定できます。

第1引数:行番号

ADDRESS関数の第1引数「行番号」,[関数の引数]ダイアログボックス]

行番号

行番号にはセル参照に使用する行番号を指定します。たとえば、 1 行目には 1 を指定します。

[関数の引数]のダイアログボックスより


行番号は、セルのアドレスを生成するための行番号を指定します。
数値を入力して使用します。

第2引数:列番号

ADDRESS関数の第2引数「列番号」,[関数の引数]ダイアログボックス]

列番号

列番号にはセル参照に使用する列番号を指定します。たとえば、 D 行目には4を指定します。

[関数の引数]のダイアログボックスより

列番号は、セルのアドレスを生成する列番号です。
数値で指定し、行番号と組み合わせてセルの位置を定義します。

第3引数:[参照の種類]

ADDRESS関数の第3引数「参照の種類」,[関数の引数]ダイアログボックス]

[参照の種類]

にはセル参照の種類が指定されます。絶対参照の場合は 1、行が相対参照で列が絶対参照の場合は 2、行が絶対参照で列が相対参照の場合は 3、相対参照の場合は 4 に設定します。

[関数の引数]のダイアログボックスより

参照の種類は、取得したいセルアドレスの絶対参照か相対参照かを指定する引数です。
省略可能で、以下の設定が可能です。

番号参照の種類
1または省略絶対参照$A$1
2行のみ相対参照A$1
3列のみ相対参照$A1
4完全な相対参照A1

第4引数:[参照形式]

ADDRESS関数の第4引数「産所形式」,[関数の引数]ダイアログボックス]

[参照形式]

この設定を A1 形式で返すか R1C1 形式で返すか選択可能に設定します。
参照形式に TRUE を設定する、または省略すると、 A1 形式のセル参照が返され、FALSE を指定すると、R1C1 形式のセル参照が返されます。

[関数の引数]のダイアログボックスより

参照形式は、取得したいセルアドレスの形式を指定します。
省略可能で、次のように設定します。

参照形式の設定形式
TRUEまたは省略A1形式A1
FALSER1C1形式R1C1

第5引数:[シート名]

ADDRESS関数の第5引数「シート名」,[関数の引数]ダイアログボックス]

[シート名]

には外部参照として使用するワークシート名の名前を文字列で指定します。

[関数の引数]のダイアログボックスより

省略可能で、セルアドレスが含まれるシート名を指定します。
シート名を指定することで、他のシートのセルアドレスを参照できます。

ADDRESS関数の使用例

業務でよく使用されるシナリオにおいて、プロジェクトのタスクリストと担当者を示すデータがあるとします。

このデータを用いて、ADDRESS関数を使用し、
各タスクのセルアドレスを生成する方法を説明します。

サンプルデータ:

タスクIDタスク名担当者
1プロジェクト計画立案田中
2市場調査鈴木
3製品設計佐藤
4マーケティング戦略伊藤
5販売開始山本

解答

ADDRESS関数は主要なパターンに分けられます。
それぞれのパターンについて、使用例を交えて基本的な操作方法を説明します。

このセクションは折りたたまれて表示されています。詳細を見るには、展開してご覧ください。

第1引数~第2引数まで指定:
基本的なセルアドレスを生成(例: $B$2)

タスクID 1の「プロジェクト計画立案」のセルアドレスを求めます。
このタスクは2行目、B列に位置します。

任意セルをクリックして、以下の関数式を入力します。

=ADDRESS(2, 2)

2行目、2列目(≒B列)のアドレスを返します。
第3引数以降が省略されると、デフォルトで絶対参照のA1形式が適用され、シート名が未指定の場合は現在のシートのアドレスが生成されます。

$B$2

第1引数~第3引数まで指定:
[参照の種類]を設定してアドレスを生成(例: $B3)

タスクID 2の「市場調査」のセルアドレスを求めます。
このタスクは3行目、B列に位置します。

任意セルをクリックして、以下の関数式を入力します。

=ADDRESS(2, 2, 3)

3行目、2列目(≒B列)のアドレスを返します。
第4引数と第5引数が省略されると、デフォルトでA1形式が適用され、
シート名が未指定の場合は現在のシートのアドレスが生成されます。

$B3

第1引数~第4引数まで指定:
[参照形式]を選択してアドレスを生成(例: R6C2)

タスクID 5の「販売開始」のセルアドレスを求めます。
このタスクは6行目、B列に位置します。

任意セルをクリックして、以下の関数式を入力します。

=ADDRESS(2, 2, 3, FALSE)

6行目、2列目(≒B列)のアドレスを返します。
第5引数が省略されると、シート名が未指定の場合は現在のシートのアドレスが生成されます。

R[2]C2

第1引数~第5引数まで指定:
[シート名]を含むセルアドレスを生成(例: ‘プロジェクトB’!B5)

タスクID 4の「マーケティング戦略」のセルアドレスを求めます。
このタスクは5行目、B列に位置し、「プロジェクトB」というシートにあります。

任意セルをクリックして、以下の関数式を入力します。

=ADDRESS(2, 2, 3, TRUE, ”データ”)

5行目、2列目(≒B列)のアドレスを返します。
全ての引数が指定されているため、指定された形式とシート名でセルアドレスが生成されます。

データ’!$B5

  • [関数の引数]ダイアログを起動は、巻末の参考記事を拝読してね

最後に

ADDRESS関数は、アドレスが語源と考えられ、セルのアドレスを取得できる関数です。
また、ExcelのADDRESS関数は、EXCEL 365、EXCEL 2010以降で利用可能です。

解答付きサンプルデータ

解答付きサンプルデータが欲しい方は、下記からダウンロードしてください。


参考記事

Excel関数を操作するための基本概念です。基本概念を理解すると、各関数の理解がより深まります。

構文に関する記事

Excel関数の引数と戻り値は何だっけ?という時に、役立つ記事です。

ダイアログボックスの使い方に関する記事

Excel関数名は何だっけ?VLOOKUP関数の使い方は何だっけ?という時に、ダイアログボックスを使うと便利です。
下記はそのダイアログボックスに関する記事です。

参照形式に関する記事

関数式をコピーする時はどうしたらいい? $マークは、どう付けたらいいだろう?
といった悩みをお持ちの方は以下をご覧ください。