エクセルの相対参照、絶対参照ってナニ?気をつけるべきポイントは?

エクセルの相対参照、絶対参照ってナニ?

関数をコピーするときに気をつけたい相対参照と絶対参照

相対参照絶対参照なんて「いかにもややこしそうな」用語ですね。
ただ、エクセルの関数をコピーするときには、避けては通れない考え方です。

 

習うより慣れろ
実例で見てみましょう。

 

関数をコピーすると、計算対象のセルが自動的にズレる

下記の表で「4回目の平均点」のところに関数をコピーして貼り付けるとします。

 

3回目平均点に設定されている関数をコピー


ここには【 =AVERAGE(D2:D6) 】 が関数として設定されています(赤い線の中)。

 

4回目平均点にコピーした関数を貼りつけ


これで4回目平均点が自動的に計算されて表示されます。

 

このときコピーして貼り付けた関数を見てみると【 =AVERAGE(E2:E6) 】となっています。
コピー元とコピー先で関数を比べてみましょう。

セル 関数
コピー元 3回目平均点(D7セル) =AVERAGE(D2:D6)
コピー先 4回目平均点(E7セル) =AVERAGE(E2:E6)

赤字の部分が違いますね。

 

『D2:D6』と『E2:E6』は次のような意味になります。

  • 『D2:D6』…D2セルからD6セルまで
  • 『E2:E6』…E2セルからE6セルまで

AVERAGE』は平均を計算せよという意味です。

 

これにより3回目の列は、3回目の平均を計算せよとなり、4回目の列は4回目の平均を計算せよという意味の関数になるのです。

 

計算対象とするセルの位置はコピーすると自動的に書き換わってくれるのです。
便利ですね。これがないと、4回目の平均点に3回目の平均点が出てしまいます。

 

ただ、計算対象とするセルの場所が変わると困るケースもあります。
別の例を見てみます。

 

前回の平均点との差を求める計算式を設定

 

【 =C7-B7 】は、C7の数値からB7の数値を引くという意味です(単なる引き算)。
これで前回の平均点との差を表示しています。

 

前回の平均点との差を求める計算式をコピー

 

この計算式を隣の列にコピーすると、ちゃんと計算対象がズレて【 =C7-B7 】が【 =D7-C7 】となります。これで前回の平均点との差が計算できます。

 

ただし、1回目の平均点との差を毎回、求めたい場合はどうでしょう?
計算式として設定したいのは、【今回の平均点 - 1回目の平均点】です。

 

コピーしたときに計算対象【1回目の平均点】がズレてしまったら困ります。
この部分はコピーしてもズレずに、固定させたいですよね。

 

$をつけて絶対参照にする

そこで登場するのが絶対参照という考え方です。
下図をみてください。

 

 

計算式が【 =C7-$B7 】となっています。
いままでとの違いは【$】マークがあること。

 

この【$】をつけたところは、コピーしてもズレずに変わらなくなります。

 

コピーした結果は【 =D7-$B7 】です。
【C7】は【D7】に変わりましたが、【$B7】は【$B7】のまま

 

これが絶対参照というわけです。
【$】がついていないコピーしたときにズレてくれるほうは相対参照といいます。

 

なお、【$】マークが有効なのは直後の値に対してのみ。
【B7】の【7】もズレてほしくないなら、【$B$7】とします。

 

(上の例では、コピー先とコピー元で縦の位置が変わっていないので、【$】マークなしの【7】だけでも、ズレずに【7】のままとなっています。)

 

相対参照と絶対参照を使い分ける

ちょっと長くなりましたが、いかがでしたでしょうか。
通常は気にせずに相対参照を使っていると思います。

 

ただし、エクセルに詳しい人が作ったファイルには絶対参照になっている箇所があるモノです。そうしたものを使うことになった場合は注意してみてください。

先生向けのExcelマニュアル

学校の先生向けに、成績処理授業時数の計算クラス名簿の並べ替え行事予定表の作成各種アンケートの集計など校務で必要なエクセルの操作方法を基礎から解説。
『エクセルの使い方』といった入門書には、学校では使わないような機能の紹介も多く、ページ数が多い割には…ということがありがちです。本書は学校の先生向けに特化したエクセルの入門書となっています。
1年1組のつもりで「1-1」と入力してるのに、「1月1日」に勝手に変換されてしまう!といった先生が学校で遭遇しがちなトラブルの回避策も掲載しています。エクセルで校務作業を効率的にしたい!と思っている先生方は、ぜひご覧ください。