スプレッドシートの絶対参照・相対参照・複合参照 完全ガイド|F4が効かないMac・Chromebook対応付き
スプレッドシートで数式をコピーしたら、思った通りの結果にならなかった経験はありませんか。これは絶対参照と相対参照の使い分けができていないことが原因です。さらにMacやChromebookだと「F4キーを押しても切り替わらない」という壁にぶつかりますよね。
この記事では、スプレッドシートの絶対参照($A$1)・相対参照(A1)・複合参照($A1 や A$1)の3種類を、数式コピー時の動きから完全に理解できるよう解説します。WindowsだけでなくMac・Chromebookでの代替操作も網羅しているので、環境に関係なくマスターできますよ。
スプレッドシートの絶対参照・相対参照・複合参照とは?3種類の違い
スプレッドシートのセル参照には3つの種類があります。違いは「数式をコピーしたときに参照先がどう動くか」です。
| 種類 | 表記例 | 動き | 主な用途 |
|---|---|---|---|
| 相対参照 | A1 | コピー方向に合わせて参照先が動く | 通常の計算 |
| 絶対参照 | $A$1 | コピーしても参照先が固定される | 消費税率・VLOOKUP範囲 |
| 複合参照(列固定) | $A1 | 横コピー時は列固定、縦コピー時は行が動く | 九九表の縦軸 |
| 複合参照(行固定) | A$1 | 縦コピー時は行固定、横コピー時は列が動く | 九九表の横軸 |
ポイントは「$ マークが付いた直後の文字が固定される」ということです。$A なら列Aが、$1 なら行1が固定されます。両方に $ を付けると完全に固定(絶対参照)になりますよ。
慣れるまでは「ドル記号がついた方は動かない」と覚えておくと混乱しません。
相対参照の基本|数式コピーで参照がずれる仕組み
まずは何も指定しない「相対参照」の挙動から見ていきましょう。これがすべての基本です。
相対参照は方向と距離だけ覚えている
たとえばB1セルに =A1 と入力すると、これは「左隣のセル」を参照しているという意味になります。スプレッドシートは「A1」という固定アドレスではなく、「自分から見て左に1つ」という相対位置を覚えているのです。
このB1セルを下のB2にコピーすると、数式は自動的に =A2 に変わります。「左隣のセル」という関係を維持したまま、行だけが下にズレるためです。
数式コピーで意図せず参照がずれる例
合計を出すSUM関数で考えてみましょう。
C2: =SUM(A2:B2) → A2とB2の合計
C3: =SUM(A3:B3) → 下にコピーすると行番号が自動で増える
C4: =SUM(A4:B4)
これは便利な挙動です。しかし「全行に共通の値(たとえば消費税率セル)」を参照したいときには困ります。相対参照のままだと参照先まで一緒にずれてしまうからです。これが「数式コピーでずれる」問題の正体ですよ。
絶対参照の使い方|$Aで完全固定する方法
参照先を固定したいときは「絶対参照」を使います。表記は $A$1 のように列文字と行番号の両方に $ を付けます。
絶対参照の基本動作
絶対参照を含む数式をコピーしても、参照先は一切動きません。下にコピーしても、右にコピーしても、$A$1 は $A$1 のままです。
実例: 消費税率を固定して計算する
商品価格に消費税をかける計算を例に考えてみましょう。B1セルに税率10%を入力しておきます。
B1: 0.1(税率10%)
A2: 1000 B2: =A2*(1+$B$1) → 1100
A3: 2000 B3: =A3*(1+$B$1) → 2200
A4: 3000 B4: =A4*(1+$B$1) → 3300
B1の税率セルを $B$1 と絶対参照にすることで、B2の数式をB3・B4にコピーしても税率セルが固定されます。価格セル(A2、A3、A4)は相対参照なので、コピー方向に合わせて自動で動いてくれますよ。

!_images/spreadsheet-absolute-relative-mixed-reference/02_result_absolute-tax.png
実例: VLOOKUPの検索範囲を固定する
VLOOKUP関数(指定した値を検索範囲から探して別列の値を返す関数)で商品マスタを参照するときも、絶対参照が活躍します。
=VLOOKUP(A2, $E$2:$F$10, 2, FALSE)
検索範囲 $E$2:$F$10 を絶対参照にしておけば、数式を下にコピーしても範囲がずれません。範囲が相対参照のままだと、コピー時に検索範囲が下にずれてしまいます。すると、マスタの一部しか参照されない事故が起こりますよ。

複合参照の使い方|行だけ・列だけを固定するテクニック
絶対参照と相対参照の中間にあたるのが「複合参照」です。$A1(列のみ固定)と A$1(行のみ固定)の2種類があります。
$A1(列のみ固定)と A(行のみ固定)の違い
$A1: 列Aは固定。行番号は数式コピー時に動くA$1: 行1は固定。列文字は数式コピー時に動く
「縦にコピーする予定なら列を固定」「横にコピーする予定なら行を固定」と覚えると分かりやすいですよ。
実例: 九九表を1つの数式で完成させる
複合参照の威力が最もよくわかるのが「九九表」です。9×9マスのすべてに1つの数式をコピーして完成させられます。
下のような表を作ります。A列に縦軸の数(1〜9)を入れ、1行目に横軸の数(1〜9)を入れておきます。
B C D E ... J
1行目: 1 2 3 4 ... 9 ← 横軸ラベル
A2: 1 1 2 3 4 9
A3: 2 2 4 6 8 18
A4: 3 3 6 9 12 27
...
A10: 9 9 18 27 36 81
↑縦軸ラベル(A列)
B2セルに =$A2*B$1 と入力します。これを右と下にコピーすると、9×9マスすべてが正しく埋まります。

$A2: 列Aを固定(縦軸の数を必ずA列から取る)B$1: 行1を固定(横軸の数を必ず1行目から取る)
横にコピーすると $A2 はそのまま、B$1 が C$1、D$1 へと進みます。下にコピーすると B$1 はそのまま、$A2 が $A3、$A4 へと進みます。これで「行ラベル × 列ラベル」の組合せがすべて計算されるわけです。
絶対参照だけでは作れない表が、複合参照だと1つの数式で完成しますよ。

数式コピー時の挙動を一覧で確認
3種類の参照が、コピー方向によってどう動くかを表で見ておきましょう。
| 元の参照 | 右に1列コピー | 下に1行コピー | 説明 |
|---|---|---|---|
A1 | B1 | A2 | 相対参照、両方動く |
$A$1 | $A$1 | $A$1 | 絶対参照、動かない |
$A1 | $A1 | $A2 | 列のみ固定 |
A$1 | B$1 | A$1 | 行のみ固定 |
「$ が付いている要素は動かない」というシンプルなルールですよ。
絶対参照に切り替えるショートカット【Windows・Mac・Chromebook対応】
毎回手で $ を打つのは面倒ですよね。スプレッドシートには参照を一発で切り替えるショートカットが用意されています。ただし環境によってキーが違います。
環境別ショートカット早見表
| 環境 | 主なキー | 補助キー | 確実な代替手段 |
|---|---|---|---|
| Windows | F4 | — | 手入力で $ を追加 |
| Mac | Fn + F4 | Command + T | 手入力で $ を追加 |
| Chromebook | 検索キー + 上段4番目(機種依存) | — | 手入力で $ を追加 |
F4キーのサイクル動作
数式編集中にセル参照部分にカーソルを置いてF4キーを押すと、以下のサイクルで参照形式が切り替わります。
A1(相対参照)$A$1(絶対参照)A$1(行のみ固定)$A1(列のみ固定)A1に戻る
このサイクルはWindows・Mac・ChromebookのどのF4でも共通です。Macで Cmd+T を使ったときも同じ動きをしますよ。
Macユーザーは Command + T を覚えておくと便利
Macのスプレッドシートには Command + T という固有のショートカットがあります。これはGoogleスプレッドシートだけの機能で、F4と同じサイクルで参照形式を切り替えてくれます。
Fn+F4 より押しやすい位置にあるので、Macユーザーは Cmd+T のほうが使い勝手が良いという声も多いです。
Chromebookでは手入力が確実
ChromebookはキーボードにF4キーが標準で存在しない機種が多いです。検索キー(虫眼鏡)と数字キーの組合せで代替できる機種もありますが、動作が不安定なことがあります。
Chromebookユーザーは「手入力で $ を追加する」のが結局いちばん確実ですよ。$A$1 と打つだけなので、慣れれば数秒で済みます。
MacでF4キーが効かないときの原因と対処法
「Macスプレッドシートで F4 を押しても何も起きない」「画面の明るさが変わるだけ」という相談はとても多いです。これはMacユーザーのせいではなく、macOSの仕様による問題ですよ。
原因: F4キーがメディアキーに割り当てられている
MacのファンクションキーはデフォルトでF1〜F12が「音量調整」「明るさ調整」「Mission Control」などのメディアキーに割り当てられています。そのままF4を押すと、明るさを上げる動作になってしまいます。
対処法1(その場で): Fn + F4 を押す
一時的にファンクションキーとして使いたい場合は、Fnキーを押しながらF4を押します。これでスプレッドシートの参照切り替えが動作しますよ。
対処法2(その場で): Command + T を使う
前述の通り、Cmd+T はGoogleスプレッドシート固有のショートカットです。Fnキーを押し続けるのが面倒な場合は、こちらのほうが使いやすいですね。
対処法3(恒久対策): システム設定を変える
頻繁にスプレッドシートを使うなら、システム設定でF1〜F12を「標準のファンクションキー」に切り替えてしまうのが楽です。
- アップルメニューから「システム設定」を開く
- 「キーボード」を選択
- 「キーボードショートカット」または「ファンクションキー」を開く
- 「F1、F2などのキーを標準のファンクションキーとして使用」をオンにする
これでF4単体で参照切り替えができるようになります。ただし、明るさ調整などのメディア機能を使うときは Fn+F4 のように Fn を押す必要がある点だけ覚えておいてくださいね。
実務でよく使う3パターン|消費税・VLOOKUP・九九表
ここまで学んだ知識を、実務でそのまま使える3パターンに落とし込んでおきましょう。
パターン1: 消費税率セルを絶対参照で固定する
商品リストに税率を掛ける場面では、税率セルを $B$1 のように絶対参照で固定します。税率が変わったときも、税率セル1つを書き換えるだけで全行の計算が更新されますよ。
=A2*(1+$B$1) ← B1セル(税率)を絶対参照で固定
下にコピーするだけで全行に適用できます。
パターン2: VLOOKUPの検索範囲を絶対参照で固定する
VLOOKUPで商品マスタを参照するときは、検索範囲を絶対参照にします。
=VLOOKUP(A2, $E$2:$F$10, 2, FALSE)
範囲を相対参照のままにすると、コピー時に範囲がずれてしまいます。すると、マスタの後ろの方の商品が引けなくなる事故が起こりますよ。VLOOKUPを使うときは「範囲は必ず絶対参照」と覚えておきましょう。
パターン3: 九九表を複合参照で作る
複合参照を実感したいなら九九表を作ってみてください。B2セルに =$A2*B$1 と入力して、B2:J10の範囲にコピーするだけで完成します。
A列に縦軸の数字(1〜9)、1行目に横軸の数字(1〜9)を準備しておきます。本体セルでは「縦軸の列を固定($A2)×横軸の行を固定(B$1)」を掛け合わせるだけですよ。
複合参照の使い分けが体に染みつくので、初めての方は一度作ってみることをおすすめします。
よくある質問とトラブル対処
Q. 数式コピー時に #REF! エラーが出る
A. 参照が範囲外に出てしまっています。コピー先で参照すべきセルを絶対参照で固定し直してください。
Q. F4キーが効かない(Chromebook)
A. 手入力で $ を追加するのがもっとも確実です。検索キーとの組合せでF4を再現できる機種もありますが、動作が不安定なことがあるためです。
Q. 名前付き範囲を使えば $ は不要?
A. はい。名前付き範囲(メニュー「データ」→「名前付き範囲」)は実質的に絶対参照と同じ働きをします。商品マスタ のようなわかりやすい名前を付けておけば、=VLOOKUP(A2, 商品マスタ, 2, FALSE) のように $ なしで範囲を固定できますよ。
Q. ExcelとGoogleスプレッドシートで参照の書き方は違う?
A. 参照の書き方(A1、$A$1、$A1、A$1)は完全に共通です。F4キーの挙動も同じです。違いは Mac版スプレッドシートで使える Cmd+T のような固有ショートカットだけですよ。
Q. スマホアプリでも $ は使える?
A. はい、書き方は同じです。ただしスマホアプリでは F4 が使えないので、$ を手入力する必要があります。
まとめ
スプレッドシートの3種類の参照を、最後に整理しておきましょう。
- 相対参照(
A1): 通常の計算。数式をコピーすると参照先も動く - 絶対参照(
$A$1): 消費税率やVLOOKUP範囲を固定するときに使う - 複合参照(
$A1/A$1): 縦横にコピーする九九表のような場面で使う
切り替えのショートカットは環境ごとに異なりますが、以下を覚えておけば困りません。
- Windows: F4
- Mac: Command + T(または Fn + F4)
- Chromebook: 手入力で
$を追加
特にMacでF4が効かない問題は、システム設定で「標準のファンクションキー」をオンにするか、Cmd+T を覚えるかのどちらかで解決しますよ。
数式コピー時の挙動を理解できれば、スプレッドシートの作業効率は大幅に上がります。今日から $ を意識的に使い分けてみてくださいね。

