エクセルのマクロの作り方(マクロの記録)
※写真はイメージです
作り方はこれだけ
マクロは、Excelでの操作を記録して、あとでボタン1つで同じことをさせるしくみです。プログラムを書けなくても大丈夫で、「開発」タブの「マクロの記録」→ いつもの操作 →「記録終了」で作れます。ひとつだけ、保存は「Excel マクロ有効ブック(.xlsm)」にしてください。ふつうの形式だとマクロが消えます。
マクロとVBAの違い・向いている作業
| 言葉 | 意味 |
|---|---|
| マクロ | Excelにさせる一連の操作のまとまり。記録して作れる |
| VBA | マクロの中身を書くための言葉(プログラム)。記録したマクロも、中身はVBAで書かれている |
| マクロの記録 | 自分の操作をそのままVBAに書き起こしてくれる機能。最初はこれで十分 |
向いているのは毎回まったく同じ手順の作業です。たとえば「毎朝届くCSVの列幅をそろえて、見出しを太字にして、並べ替えて印刷範囲を決める」とか。逆に、毎回判断が変わる作業や1回きりの作業は、正直、手でやったほうが早いです。
準備:「開発」タブを出す
- 「ファイル」→「オプション」
- 左の「リボンのユーザー設定」→ 右の一覧の「開発」にチェック →「OK」リボンの右端に「開発」タブが出ます。
「開発」タブを出さなくても、「表示」タブの右端の「マクロ」→「マクロの記録」でも記録できます。
マクロを記録する
- 「開発」→「マクロの記録」
- マクロ名を入れる(空白は使えない)例:見出しを整える。ショートカット キーを決めておくと、あとでキーで動かせます。
- 保存先は「作業中のブック」のまま「OK」「個人用マクロ ブック」にすると、どのファイルからでも使えるようになります。
- ふだんどおりに操作する例:A1を選ぶ →1行目を選ぶ → 太字 → 塗りつぶし → 列幅の自動調整。間違えた操作も記録されるので、ゆっくり確実に。
- 「開発」→「記録終了」ここまでの操作がマクロになりました。
記録したときに選んでいたセルの場所まで覚えてしまうので、「今いるセルから下へ」のように場所を変えたいときは、記録の前に「相対参照で記録」をオンにします。
マクロを動かす
| 動かし方 | 手順 |
|---|---|
| 一覧から選ぶ | Alt+F8(または「開発」→「マクロ」)→ マクロを選んで「実行」 |
| ショートカットキー | 記録のときに決めたキー(例:Ctrl+Shift+M)を押す |
| シートにボタンを置く | 「開発」→「挿入」→「フォーム コントロール」の「ボタン」→ シートの上でドラッグ → 動かすマクロを選ぶ |
マクロで行った操作は Ctrl+Z で元に戻せません。初めて動かすときは、ファイルのコピーで試します。
保存のしかた(.xlsm)
中身(VBA)を見る・少し直す
Alt+F11 でVBAの画面(Visual Basic Editor)が開き、左の「標準モジュール」の「Module1」に記録した中身があります。たとえば、選んでいる範囲の空白のセルに「未入力」と入れるマクロは次のように書けます。
Sub 空白に未入力()
Dim c As Range
For Each c In Selection
If c.Value = "" Then c.Value = "未入力"
Next c
End Sub
「Sub 名前()」から「End Sub」までが1つのマクロです。いきなり書こうとしなくていいので、記録したものを読んで、数字や文字を少し書き換えるところから始めるのがいいと思います。
うまくいかないとき
1開くと「セキュリティの警告 マクロが無効にされました」と出る
マクロは悪用されることがあるので、最初は止められています。
直し方自分で作ったファイルか、信頼できる相手のファイルなら、黄色い帯の「コンテンツの有効化」を押します。
2「Microsoft によりマクロの実行がブロックされました」と出る
メールやインターネットから受け取ったファイルは、Windowsが「ネットから来たもの」と印を付けていて、マクロが止められます。
直し方信頼できるファイルなら、いったん閉じてエクスプローラーでファイルを右クリック →「プロパティ」→ 下の「許可する」にチェック →「OK」で開き直します。
3保存し直したらマクロが消えた
「Excel ブック(.xlsx)」の形式で保存しています。
直し方「名前を付けて保存」で「Excel マクロ有効ブック(.xlsm)」を選びます。
4別の場所のセルで動いてしまう
記録したときのセル番地をそのまま覚えています。
直し方「相対参照で記録」をオンにして記録し直します。
5Web版のExcelやスプレッドシートで動かない
VBAのマクロはパソコンのExcel(Windows・Mac)で動きます。Web版のExcelでは実行できません。
直し方パソコンのExcelで開きます。Web版で自動化したいときは「Office スクリプト」という別の機能を使います。
サンプルファイルで試す
よくある質問
エクセルのマクロとは?
Excelでの操作を記録して、ボタン1つやショートカットキーで同じ操作を繰り返させるしくみです。中身はVBAという言葉で書かれています。
マクロの作り方は?
「開発」タブの「マクロの記録」を押し、いつもの操作をしてから「記録終了」を押します。「開発」タブは「ファイル」→「オプション」→「リボンのユーザー設定」で出します。
マクロを保存するには?
「名前を付けて保存」で、ファイルの種類を「Excel マクロ有効ブック(.xlsm)」にします。
マクロとVBAの違いは?
マクロは自動でさせる操作のまとまり、VBAはその中身を書く言葉です。記録したマクロもVBAで書かれていて、Alt+F11で見られます。
マクロを有効にするには?
開いたときに出る黄色い帯の「コンテンツの有効化」を押します。ネットから受け取ったファイルは、ファイルのプロパティで「許可する」にチェックが必要なことがあります。
一緒に覚えたい関数・操作
- VBA関数(専用のページ)
- Excelのショートカットキー一覧(Alt+F8・Alt+F11)
- 印刷の設定(マクロにしやすい作業)
- 並べ替えとフィルター
- ピボットテーブル
- Excelの使い方一覧
- Excel関数一覧
このページについて
操作の説明は Microsoft 365 の日本語版Excel(Windows)に合わせています。図はこのサイトで作ったもので、表の会社名・商品名・人名は架空です。運営者情報