
マクロの記録は使ったことがあるけど、相対参照ってなんだろう?

Excelでマクロを記録する際、リボンにひっそりとある「相対参照で記録」ボタン。
気にはなるものの、「何が違うの?」「どうやって使うの?」と疑問に思っている方もいるのではないでしょうか?
この記事では、マクロ未経験者の方でもわかるように、Excelの「相対参照で記録」機能について、解説していきます。
この記事を読み終える頃には、単調な繰り返し作業を自動化し、あなたのExcelスキルをワンランクアップさせることができますよ!
そもそもマクロ記録とは?「絶対参照」と「相対参照」の違いを理解しよう

まず、マクロ記録の基本的な仕組みと、2つの参照方法(絶対参照と相対参照)の違いを理解しましょう。
マクロ記録は「操作を録画する」機能
マクロ記録とは、マウスのクリックやキーボード入力を、Excelが自動的にVBA(Visual Basic for Applications)というプログラミング言語に変換して記録してくれる機能です。
ビデオカメラで操作を「録画」しているようなイメージです。
絶対参照と相対参照:マクロの世界での「座標の指定方法」
私たちが普段使うマクロ記録は、デフォルトで「絶対参照」という方法で記録されます。
これは、操作するセルを「番地(座標)」で指定する方法です。
たとえば、セルA1をクリックして文字を入力すると、マクロは「セルA1に移動して、文字を入力する」という命令として記録します。
そのため、マクロを何度実行しても、常に「セルA1」という決まった場所に対して同じ操作が繰り返されます。
一方で、「相対参照」は、操作するセルを「現在いる場所から見て、どこに移動するか」で指定する方法です。
たとえば、セルA1にいた状態で「右に1つ移動して文字を入力する」という操作をすると、マクロは「今いるセルから右に1つ移動して、文字を入力する」という命令として記録します。
そのため、マクロを実行する開始位置によって、操作するセルが変わります。
参照方法 | 記録される命令のイメージ | 特徴 | 適した場面 |
絶対参照 | 「セルA5に移動して、文字を入力する」 | 常に決まったセルに対して操作を行う | 毎月決まったフォーマットのレポートを作成する作業など、操作するセルが固定されている場合 |
相対参照 | 「今いるセルから下に2つ移動して、文字を入力する」 | マクロを実行する開始位置によって、操作するセルが変わる | 複数行にわたるデータの整形や、リストの最終行に追加する作業など、操作するセルが毎回変わる場合 |
相対参照でマクロを記録する具体的な方法

それでは、実際に相対参照でマクロを記録してみましょう。
今回は「選択したセルから2つ右のセルに、文字『OK』と入力する」というマクロを作成します。
ステップ1:開発タブを表示する
もしリボンに「開発」タブが表示されていない場合は、まず表示させましょう。
- 「ファイル」タブをクリックします。
- 左側のメニューから「オプション」を選択します。
- 「リボンのユーザー設定」をクリックします。
- 右側の「メインタブ」のリストから「開発」にチェックを入れ、「OK」をクリックします。

これで、リボンに「開発」タブが表示されます。
ステップ2:「相対参照で記録」ボタンをオンにする

「開発」タブの「コード」グループ内にある「相対参照で記録」ボタンをクリックして、オンにします。ボタンが薄いグレー色に変わればOKです。


このボタンがオンになっている間は、すべての操作が「相対参照」で記録されます。
ステップ3:「マクロの記録」を開始する
「相対参照で記録」ボタンの隣にある「マクロの記録」ボタンをクリックします。
ダイアログボックスが表示されたら、マクロ名(例: TestMacro)、ショートカットキー、保存先などを設定し、「OK」をクリックします。
ステップ4:操作を記録する
操作を記録します。
- 「マクロの記録」開始後、何もクリックせずに、記録を開始したいセル(例: B2セル)を選択します。
- キーボードの矢印キーで「右に2つ」移動します。(例: B2→C2→D2)
- 移動先のセル(D2セル)に「OK」と入力します。
ステップ5:記録を終了する
「開発」タブに戻り、「記録終了」ボタンをクリックします。
これでマクロの記録は完了です。
最後に、必ず「相対参照で記録」ボタンをオフに戻すことを忘れないようにしましょう。
作成したマクロを実行してみよう!
作成したマクロを実行してみましょう。
- まず、開始位置となるセル(例: A1セル)を選択します。
- 「開発」タブの「マクロ」ボタンをクリックします。
- 作成したマクロ(例:
TestMacro
)を選択し、「実行」をクリックします。
どうでしょうか? セルA1から2つ右のセルC1に「OK」と入力されましたね。

次に、開始位置をセルB5にして、もう一度マクロを実行してみましょう。
今度はセルB5から2つ右のセルD5に「OK」と入力されました。


このように、相対参照で記録したマクロは、開始位置によって操作する場所が変わるのが特徴です。
相対参照と相性抜群!作業効率を爆上げするショートカットキー
相対参照でマクロを記録する際、マウス操作を減らし、キーボード操作だけで記録すると、よりシンプルで汎用性の高いマクロになります。

ここでは、特におすすめのショートカットキーを2つご紹介します。
Ctrl + 矢印キー:データの塊の端まで一瞬でジャンプ!
このショートカットキーは、データが連続して入力されているセルの塊で、端まで一気に移動したいときに便利です。
キー操作 | 移動方向 |
Ctrl + ↓ | 下方向の最終データまで移動 |
Ctrl + ↑ | 上方向の最終データまで移動 |
Ctrl + → | 右方向の最終データまで移動 |
Ctrl + ← | 左方向の最終データまで移動 |
たとえば、「氏名」「部署」「電話番号」と入力されたリストの最終行にデータを追加したい場合、「Ctrl + ↓」でデータの最終行に一瞬で移動し、そこから「↓」で1つ下に移動して新しいデータを入力する、という一連の操作を相対参照で記録すれば、マクロが完成します。
Shift + 矢印キー:セルを選択しながら移動!
このショートカットキーは、セル範囲を選択したいときに使います。
キー操作 | 動作 |
Shift + 矢印キー | 矢印方向にセルを1つずつ選択しながら移動 |
Ctrl + Shift + 矢印キー | データの塊の端まで、選択しながら移動 |
「Ctrl + Shift + ↓」で、リストのデータが入力されている範囲をまとめて選択する、といった操作を記録することで、フィルタリングや書式設定などの作業を効率化できます。
相対参照マクロの活用例:日報の入力を自動化する

最後に、相対参照マクロの具体的な活用例を見ていきましょう。

上記のような日報フォーマットがあるとします。毎日、新しい行に日付と業務内容を入力し、「完了」の列に「完了」を入力する作業をマクロ化してみましょう。
【マクロで自動化したい操作】
- リストの最終行に移動する
- 1つ下のセルに移動する
- 現在の日付を入力する
- 右隣のセルに「完了」を入力する
【マクロ記録の手順】
- 「開発」タブの「相対参照で記録」をオンにします。
- 「マクロの記録」を開始します。
- リスト内の任意のセル(例: B2)を選択します。
- 「Ctrl + ↓」を押してリストの最終行(B4)に移動します。
- 「↓」を押して1つ下のセル(B5)に移動します。
- 「Ctrl + ←」を押してリストの最終先頭行(A5)に移動します。
=TODAY()
と入力し、日付を表示させます。- 「→」を押して右隣のセル(C5)に移動します。
- 「完了」と入力します。
- 「記録終了」をクリックします。
- 「相対参照で記録」をオフに戻します。
このマクロを実行すると、次にリストの最終行の下に、自動で今日の日付と「完了」が入力されるようになります。

このように、相対参照マクロは、データの入力作業や、リストの整形作業など、毎回操作する場所が変わる作業に非常に役立ちます。
まとめ

この記事では、Excelマクロの「相対参照で記録」について解説しました。
という違いを理解し、マクロ記録の際に「相対参照で記録」ボタンをオンにするだけで、汎用性の高いマクロが作成できます。
この知識を活用することで、あなたのExcel作業は劇的に効率化されるはずです。ぜひ色々な作業で試してみてくださいね!
コメント