Logic Delight

明日のワシは忘れてしまうから、コードにはコメントを書くのです。

Excelで動的な位置のセルの値を返す

ご挨拶と前置き

今年もよろしくお願いします。

我が家の家計は、お手製のExcel家計簿によって支えられているのですが、毎年少しずつバージョンアップ(というか使い方の補正)が行われている年末年始。当初はVBAバリバリだったものが、結局は「大幅な改訂は年末年始にしか起こらない」ため、手作業一発で割り切る部分が大半になり、条件付き書式や計算式がバリバリ洗練されていく方向で進化を続けております。

んで、非常に今更ながらなことではありますが、昨年後半に入社してきたスゴイ人のExcelシートを見て盗んだ技を、早速導入してみたのでリマインド。

サンプル

例えば、特定のシートの特定のセル位置にある値を取得したい。対象のシート名も、セル位置もわかる。その場合は、2つの関数を使って2段階で実現することができる。

  1. ADDRESS関数で、セル番地を作成する
  2. INDIRECT関数で、対象セル番地の値を参照する

んー、我ながらスンゲー雑な説明だけど、ま、いっか。

<<参考サイト>>

ADDRESS関数の使い方(行・列番号からセル番地を作成する関数)
http://maglog.jp/excel/Article248022.html

INDIRECT関数の使い方(間接的にセルの値を参照する関数)
http://maglog.jp/excel/Article255518.html

エクセルでセル内の数字を参照することでアドレスを返す - OK Wave
http://okwave.jp/qa/q1602410.html