列挿入に合わせて数式の参照セルを希望通りに自動変更する方法(1)
今日ご紹介する方法は、毎日列挿入をして本日データを入力し、前日差や前日比を計算している人に役立つと思います。
たとえば、レートを以下のような表で管理しているとします。
「2015年2月9日」は「2015年2月6日」と「前日差」との間に列を挿入します。
列を挿入したら、「2月6日」と「2月9日」の差異が自動で計算されるのが理想です。
しかし、セル番地を使った数式の場合、
「2月5日」と「2月6日」の差異を計算する数式(=AB3-AA3のままです。
このままでは列を挿入するたびに数式を修正しなくてはなりません。
面倒ですよね。こんなときはOFFSET関数を使って数式をつくりましょう!
OFFSET関数を使うと、
「=OFFSET(AC3,0,-1)-OFFSET(AC3,0,-2)」という数式になります。
この式は、
「"AC3セルを基準にして同行で左に1列移動したセル"から
"AC3セルを基準にして同行で左に2列移動したセル"を引く」という意味です。
つまり、「OFFSET(AC3,0,-1)」が
"AC3セルを基準にして同行で左に1列移動したセル"を、
「OFFSET(AC3,0,-2)」が
"AC3セルを基準にして同行で左に2列移動したセル"を表しています。
OFFSET関数の使い方をあまりご存知でない人は、以下の記事をご覧ください。
【エクセル関数】指定した行列分シフトしたセルの値を参照するOFFSET
この数式にすると、AC列に列を挿入しても計算式が
「=OFFSET(AD3,0,-1)-OFFSET(AD3,0,-2)」と自動で変更するので、
手修正不要で前日差が計算されます。
下の画像をごらんください。
「2015年2月9日」の列が空白なので「2月6日」の値がマイナス表示されており
正しく計算されていることが分かります。
OFFSET関数は「任意のセルを基準にして参照するセルを指定できる関数」です。
セル番地でのセル参照がうまくいかないとき、
OFFSET関数を使ってみるといいかもしれませんよ。
お役に立ちましたか?ご活用ください♪