社長ブログ社長ブログ

Excelの「INDIRECT関数」

オントラックの財務モデリング担当 北川です。
今日は「INDIRECT関数」について、ご紹介します。

INDIRECT関数は指定される文字列への参照を返す関数です。
つまり、A1やC10といった参照したいセルを、”A1″や”C10″といった文字列で指定すると、そのセルを参照する関数です。

INDIRECT関数の書式は、INDIRECT(参照文字列、[参照形式])です。
参照文字列には、セル番地や定義されている名前等、セルへの参照を指定します。
参照形式は省略可能です。
参照形式にTRUEを指定するか省略すると、参照文字列にはA1形式のセル参照が入力されているとみなされます。
一方、参照形式にFALSEを指定すると、参照文字列にはR1C1形式の参照が入力されているとみなされます。A1形式で使う方が多いと思いますので、そんな気にする必要はありません。

例えば、以下のC7セルからC10セルのように様々な形でD3セルを指定すると、D3セルにある7が表示されます。

注意点としては、数式内で文字列を入力する場合は””で囲む必要があることです。

ところで、意外と知られていない演算子に、共通部分の参照演算子である、 (半角スペース)があります。

B7セルには、=B4:D4 C3:C5という数式を入力しています。B4:D4とC3:C5の間に (半角スペース)が入っているのがポイントです。
(半角スペース)はセル範囲の共通部分を示す参照演算子で、B4:D4のセル範囲とC3:C5のセル範囲の共通部分であるC4セルの5が表示されます。

INDERECT関数に、共通部分の参照演算子、さらに前回ご紹介した「名前」を組み合わせると、表の中から取り出したい数字を容易に取り出すことができるようになります。
まずは、以下のようにB4:F7を選択して、Ctrl+Shift+F3を押すと、「上端行」「左端列」にチェックが入った状態のダイアログボックスが出てきますので、Enter を押します。

すると、例えば、C6:F6のセル範囲に「バーミヤン」という名前が付きました。

一つのセルでなく、セル範囲に名前がついていることに注意してください。例えば、以下のように、C6セルだけには名前がついていません。

ここで、B11セルとC11セルに、それぞれブランド(ジョナサン)と地域(神奈川)を入力して、D11セルに=INDIRECT(B11) INDIRECT(C11)と入力すると、 ジョナサンと神奈川の共通部分にある60という数字が表示されます。

もちろん、ブランド名、地域名を別のものに変えれば、それに合わせて店舗数も変わります。
表から指定した数字を得たい時には便利です。
ただ、表の項目が多すぎると、定義する名前が多くなってしまい、逆に分かりにくくなることがあります。
とはいえ、便利な機能ではあるので、デメリットを知った上で、使いたい時に使えるようになってください。

エクセルのスキルアップで働き方改革を!


次回の財務モデリング基礎講座は6月16日(日)ですが、満員御礼でお申し込みを締め切っております。
その次の財務モデリング基礎講座は9月15日(日)です。お申し込みはこちらからどうぞ。

動画配信開始