「Excelの作業を自動化したいけど、VBAは難しそう……」
そんな方にぴったりなのがマクロの記録です。ボタンをクリックして操作するだけで、その手順がマクロとして記録されます。
プログラミングの知識は一切いりません。
この記事では、マクロの記録の使い方を開始から実行まで順番に解説します。メリット・デメリットやVBAとの使い分けも紹介しますので、ぜひ参考にしてください。
マクロの記録とは?
マクロの記録とは、Excelの操作をそのままVBAコードに変換してくれる機能です。記録を開始してから終了するまでの操作が、自動的にマクロとして保存されます。
たとえば「値の入力・罫線・色付け」といった一連の作業を記録しておけば、次回からボタンひとつで再現できます。
手動とマクロの作業イメージを比較してみましょう。
| 項目 | 手動作業 | マクロの記録で自動化 |
|---|---|---|
| 作業時間 | 毎回5〜10分 | 実行1秒 |
| ミスの可能性 | 入力ミス・手順忘れ | 記録どおりに実行 |
| プログラミング知識 | 不要 | 不要 |
NOTE
マクロの記録はExcel上の操作だけを記録します。別のアプリを開く、メールを送る、マウスカーソルの動きを記録する、といったことはできません。
マクロの記録の使い方
マクロの記録の手順は、次の4ステップです。
- 開発タブを表示する
- 「マクロの記録」ボタンをクリックする
- 記録したい操作を実行する
- 「記録終了」ボタンをクリックする
順番に見ていきましょう。
ステップ1: 開発タブを表示する
マクロの記録ボタンは「開発」タブに配置されています。初期設定では非表示になっているので、まだ表示していない方は先に設定しておきましょう。
開発タブの表示手順:
- 「ファイル」タブ →「オプション」を開く
- 「リボンのユーザー設定」を選択する
- 右側の一覧から「開発」にチェックを入れる
- 「OK」をクリックする
詳しい手順は以下の記事で解説しています。
ステップ2: 「マクロの記録」ボタンをクリックする
「開発」タブを開いて、「マクロの記録」をクリックします。
すると、次のような設定画面が表示されます。
各項目の意味は次のとおりです。
| 項目 | 説明 | 補足 |
|---|---|---|
| マクロ名 | マクロの名前 | 日本語でもOK。わかりやすい名前を付けましょう |
| ショートカットキー | 実行用のショートカット | 省略可。Ctrl + 任意のキーを設定できます |
| マクロの保存先 | 保存するブック | 「作業中のブック」のままで問題ありません |
| 説明 | マクロの概要メモ | 省略可。後で見返すときに便利です |
設定を確認したら「OK」をクリックしましょう。これで記録が開始されます。
TIP
マクロ名は「月次表作成」「在庫更新」のように、処理内容がわかる名前にすると管理しやすくなります。
ステップ3: 記録したい操作を実行する
OKをクリックした瞬間から記録がスタートします。ここからの操作がすべてマクロとして記録されるので、自動化したい手順を実際に実行しましょう。
たとえば、次のような操作が記録できます。
- セルに値を入力する
- セルの書式(色・罫線・フォント)を設定する
- 行や列の挿入・削除
- シートの追加・コピー
- 関数の入力
- フィルターの操作
記録中は「開発」タブのボタンが「記録終了」に変わっています。これが表示されていれば記録中です。
NOTE
操作ミスもそのまま記録されます。間違えた操作を取り消して(Ctrl + Z)やり直すと、その取り消し操作も記録されてしまいます。できるだけ正確に操作しましょう。
ステップ4: 「記録終了」ボタンをクリックする
自動化したい操作が終わったら、「開発」タブの「記録終了」をクリックします。
これでマクロの記録は完了です。記録終了を忘れるとずっと記録が続いてしまうので、忘れずにクリックしましょう。
記録したマクロの実行方法
記録したマクロを実行するには、「開発」タブの「マクロ」ボタンをクリックします。
マクロの一覧が表示されるので、実行したいマクロを選んで「実行」をクリックしましょう。
記録した操作が自動的に再現されます。
TIP
ショートカットキーを設定していた場合は、キーボード操作だけでマクロを実行できます。繰り返し使うマクロにはショートカットキーの設定がおすすめです。
記録されたVBAコードを確認する
マクロの記録で作成されたVBAコードを確認してみましょう。マクロの一覧画面で「編集」をクリックすると、VBE(Visual Basic Editor)が開きます。
実際にコードを見ると、簡単な表を作っただけなのにかなりの行数になっていることがわかります。
たとえば、セルに値を入力しただけの操作でも、次のようなコードが生成されます。
Sub Macro1()
Range("A1").Select
ActiveCell.FormulaR1C1 = "商品名"
Range("B1").Select
ActiveCell.FormulaR1C1 = "数量"
Range("A2").Select
End Sub
手動で書くなら、もっとシンプルに記述できます。
Sub 入力マクロ()
Range("A1").Value = "商品名"
Range("B1").Value = "数量"
End Sub
マクロの記録ではセルの選択(.Select)が逐一記録されるため、コードが冗長になります。これがデメリットのひとつですが、「VBAではこう書くのか」と学習の手がかりになる面もあります。
マクロの記録のメリット・デメリット
マクロの記録のメリットとデメリットを整理しておきましょう。
メリット
| メリット | 内容 |
|---|---|
| VBAの知識が不要 | プログラミング経験がなくてもマクロを作れる |
| 操作がシンプル | 記録開始 → 操作 → 記録終了の3ステップ |
| コードの学習に使える | 記録されたコードを読めばVBAの書き方が学べる |
| すぐに使える | 定型作業をその場で自動化できる |
最大のメリットは「VBAを知らなくてもマクロが作れる」ことです。
また、VBAを勉強中の方にとっては「この操作をVBAで書くとどうなるのか」を確認するツールとしても活用できます。書き方がわからないときに、まず記録してコードを確認するという使い方はとても便利です。
デメリット
| デメリット | 内容 |
|---|---|
| 条件分岐ができない | 「もし〜なら」という判断処理は記録できない |
| 繰り返し処理ができない | ループ(For文・Do文)は記録されない |
| コードが冗長になる | 不要な.Selectが大量に生成される |
| 変更に弱い | セル位置が変わると正しく動かなくなる |
| Excel以外は操作できない | 他のアプリやメール送信は対象外 |
マクロの記録は「記録された通りの動きしかしない」ため、状況に応じた判断ができません。
わかりやすい例で説明しましょう。「りんご」と入力されたセルを黄色にするマクロを記録したとします。記録後にセルの内容を「ばなな」に変更しても、マクロは同じセルを黄色にします。セルの中身を見て判断しているわけではないからです。
このような「条件に応じた処理」が必要な場合は、VBAで直接コードを書く必要があります。
マクロの記録とVBAの使い分け
マクロの記録とVBAの使い分けを整理しておきましょう。
| 比較項目 | マクロの記録 | VBAで直接記述 |
|---|---|---|
| 難易度 | かんたん | 学習が必要 |
| 条件分岐(If文) | できない | できる |
| 繰り返し処理(For文) | できない | できる |
| 他ブック操作 | 限定的 | 自由自在 |
| コードの効率 | 冗長になりがち | 必要最小限に書ける |
| 柔軟性 | 低い(固定操作のみ) | 高い(変数・引数で汎用化) |
| おすすめの場面 | 定型作業の自動化 | 複雑な業務処理の自動化 |
マクロの記録が向いている場面:
- 毎月同じ書式の表を作成する
- 決まったセル範囲に罫線や色を設定する
- フィルターの適用や解除を自動化する
VBAで直接書くのが向いている場面:
- 条件によって処理を変えたい(If文)
- 大量のデータを繰り返し処理したい(For文)
- 複数のブックやシートをまたいで操作したい
まずはマクロの記録で自動化の便利さを体験してみてください。「もっと柔軟にしたい」と感じたら、VBAの学習に進むのがおすすめです。
VBAとマクロの違いについて詳しく知りたい方は、こちらの記事を参考にしてください。
Excel VBAとマクロの違いとは?初心者向けにわかりやすく解説
マクロの記録の注意点
マクロの記録を使うときに知っておきたい注意点をまとめます。
ファイル形式は「.xlsm」で保存する
マクロを含むファイルは、マクロ有効ブック(.xlsm)で保存する必要があります。通常の.xlsx形式で保存すると、マクロが削除されてしまいます。
「名前を付けて保存」でファイルの種類を「Excelマクロ有効ブック (*.xlsm)」に変更して保存しましょう。
ファイル形式の違いについて詳しくはこちらの記事をどうぞ。
Excel VBAのファイル形式とは?.xlsxと.xlsmの違いを初心者向けに解説
セキュリティ設定を確認する
Excelのセキュリティ設定によっては、マクロがブロックされて実行できないことがあります。
マクロが実行できない場合は、次の手順で設定を確認してください。
- 「ファイル」→「オプション」→「セキュリティ センター」を開く
- 「セキュリティ センターの設定」をクリック
- 「マクロの設定」で「警告を表示してすべてのマクロを無効にする」を選択
この設定にしておくと、ファイルを開いたときに黄色のバーが表示されます。「コンテンツの有効化」をクリックすればマクロが使えるようになります。
記録前にやり直し操作を確認する
マクロの記録中は、Ctrl + Z(元に戻す)の操作も記録されます。操作をミスしてやり直した場合、余計なコードが増えてしまいます。
複雑な操作を記録する場合は、事前に手順を確認してから記録を開始するのがおすすめです。
まとめ
マクロの記録は、VBAの知識がなくてもExcelの定型作業を自動化できる便利な機能です。
ポイントをおさらいしておきましょう。
- 記録の手順: 開発タブ →「マクロの記録」→ 操作 →「記録終了」の4ステップ
- 実行方法: 「開発」タブ →「マクロ」→ マクロ名を選択して実行
- メリット: VBAの知識不要、操作がシンプル、コード学習にも使える
- デメリット: 条件分岐・繰り返し処理ができない、コードが冗長
- 保存形式: 必ず .xlsm(マクロ有効ブック)で保存する
まずはマクロの記録で自動化を体験してみてください。もっと柔軟な自動化に挑戦したくなったら、VBAの学習に進みましょう。
VBAの学習ステップについてはこちらの記事で詳しく解説しています。
