Excelは、集計や分析作業をスムーズに実行できるため多くの企業で導入されています。とはいえ、膨大なデータのとりまとめにはどうしても手間と時間がかかるもの。
Excelの基礎をマスターする図解ガイド
配布中
「Excelの最低限基本的なことをまとめて学びたい」という方に向けた、図解ガイドをダウンロードいただけます。
基本的なシートの操作方法から、よく使う関数の使い方、グラフ・ピボットテーブルの活用方法などを図解付きで徹底的に解説。
実践で使えるテンプレートも付属していますので、ぜひご活用ください。
日々の作業効率を上げるために活躍するのが、Excelのマクロ機能です。マクロはExcel上で行うコピー&ペーストや入力等の決まった作業を自動化できます。
たとえば、セルをコピーして別のExcelファイルを開き、所定の欄に貼り付けをして印刷をする、といった一連の作業を、1回のクリックで済ませることも可能です。
今回の記事では、ビジネスパーソンとして覚えておきたいExcelマクロの基本的な使い方を解説します。
Excelの「マクロ」とは?
マクロとは、Microsoft Excel(エクセル)の作業を自動化する機能を指します。マクロを通じて、データ入力や集計、印刷など、Excelで行うすべての機能を操作可能です。事務職の方は重宝するでしょう。
特に単純な作業を何度もくり返すシーンでマクロが活躍します。

マクロを使用してできること
マクロは基本的に「同じ操作の繰り返し」を行うため、定期的に行う作業があれば、すべてマクロで実行できると考えていいでしょう。
マクロでは例えば、セルやテーブルの編集、データの集計・加工、ファイルの統合・分割、書類の作成などが行えます。これらを組み合わせることで、以下のような業務を自動化可能です。
- 毎月の顧客/売上/その他実績などのデータの入力、加工
- データをまとめた上で表やグラフの作成
- 定期的に作成する書類の自動作成、画像の挿入、大きさ変更
- HTMLメールの送信
難易度は上がりますが、最後に挙げたメール送信のように外部アプリケーションを巻き込んだ自動化も可能です。
マクロを活用するメリット
マクロで作業を自動化することで、次のようなメリットがあります。
- 作業時間が短縮され、別のタスクに時間を使えるようになる
- 複雑な作業フローが短縮され、簡易的な引継ぎで誰でも作業が可能になる
- 入力漏れや計算ミスなどのケアレスミスがなくなる
- 関数を活用することでさらに高度な自動化を実現できる
- 業務内容の整理につながる
マクロにより工程の多い作業をまとめることで、作業者の負担は大きく軽減されます。作業時間が短くなることはもちろん、一度マクロに記録してしまえば作業工程もぐっと圧縮されるため、誰でも同じクオリティの作業が可能になるのも利点です。
また、マクロはExcelだけでなくほかのMicrosoft Officeアプリと連携できる点でも優秀です。メールを自動で送信したり、データをPowerPointやWordへ転送したりと、幅広い業務に活用できます。
どのような作業がマクロで自動化できるか考えることで、業務を整理し生産性を向上させることにもつながります。例えば、マクロで自動化することが難しい作業があれば、そもそも非効率な手法で行っている可能性もあります。
マクロとVBAの違い
「マクロ」と「VBA」は混同され、同じような意味で使われることも多いですが、厳密には下記のような違いがあります。
- マクロ:Excelや他のアプリケーションを決まった順序で制御する機能の名前
- VBA:マクロ機能で作成する順序を記述するときに使うプログラミング言語の名前
VBAは、マクロ機能で使われているプログラミング言語なので、機能そのものを指す言葉ではありません。
VBAを習得することで、マクロを使ってより複雑な処理が行えるようになりますが、「マクロの記録」機能を使えばVBAの知識がない方でもマクロを扱えます。
Excelのマクロを利用する際の注意点
Excelのマクロを利用して作業を自動化する際には、以下にご紹介する注意点に留意するといいでしょう。
大量のデータの自動化には要注意
マクロで作業を自動化する際には、一度の実行で処理データ量が多くなりすぎないよう注意しましょう。滅多にないことですが、Excelの1つのファイルの上限を超える処理はできません。
また、上限に達しなくても重すぎる処理は時間がかかることがあります。
Officeのアプリケーション以外との連携はできない
ExcelマクロはOutlookなどのOfficeアプリケーションと連携できる点が優秀ですが、Office外のアプリケーションとの連携はできません。
アプリケーション開発には向かない
マクロはあくまで作業を自動化する機能であるため、操作画面をデザインして運用するようなアプリケーション開発には向きません。
条件分岐の設定にはVBAを使ったコード編集が必要
「この場合はAの操作、この場合はBの操作」といったような条件分岐は、初心者でも使いやすい「マクロの記録」では対応できません。
複雑な条件分岐も含めたマクロを実装したい場合は、VBAを利用したコード編集が必要となります。
マクロの動作確認を徹底する
マクロを作成したら、さまざまな実行パターンを試し、正常に処理が完了するかの確認を徹底しましょう。例えばメール送信などの場合は、誤操作で大きな騒動に発展する可能性もあります。
また、マクロの組み方を間違えた際に処理が止まらなくなることがあります。その場合はキーボードのEscキーで処理を抜けることができます。
マクロを管理する担当者を立てる
作成したマクロはチーム内で共有して使用することが多いかと思われますが、それぞれが自由に利用できる状況では誤編集などにより取り返しのつかないミスや大きな出戻りにつながる可能性があります。
そのため、マクロの作成・編集・使用を統括する管理者を立て、予期しないエラーやミスの起きにくい体制を作りましょう。
マニュアル化して誰でもメンテナンスを引き継げるようにしておく
マクロを組むには一定の知識と経験が必要になること、コードの解説が不十分な場合は他者が理解するのが難しいことが要因で、属人化しやすくなります。
チーム内でマクロのコード内容を定期的に共有するようにしましょう。また、一度口頭で説明しただけでは、理解・改修は難しいため、マニュアル化しておくのがおすすめです。できるだけ分かりやすく、初心者が見ても理解できるようなレベルにしておくことでメンテナンスを誰でも引き継げます。
マクロ作成の基本的な使い方を4つのステップで解説
初めてマクロを学ぶ際は、「マクロの記録」機能を使ってみることから始めましょう。
通常、マクロはVBAというプログラミング言語で命令を出します。しかし「マクロの記録」を使うと、実際に人間が作業をやってみせることでマクロが作業手順を覚えるため、VBAの知識は必要ありません。
ちなみに「マクロの記録」を使うと、操作した内容に応じたVBAも自動で記述されます。まずは初歩となる「マクロの記録」の使い方をマスターし、慣れてきたら「マクロの記録」で記述されたVBAを編集したり、一からVBAを記述したりとステップアップしていきましょう。
ここからは実際のExcelの画面を参照しながら、「マクロの記録」を使う方法をご紹介します。
ステップ1. マクロの記録を開始する
マクロの記録は、ビデオの録画のように「開始」から「終了」までの作業を覚えこませることが可能です。まずは記録を開始しましょう。
- 「表示」タブの「マクロ」をクリック ※「開発」タブからも選択可能
- 「マクロの記録」をクリック
- 「マクロ名」を入力 ※自分がわかりやすい名前を自由につけましょう
- 「OK」をクリック

ステップ2. 記録したい内容を操作する
ここからは、自動化したい作業を実際にExcel上で行います。たとえば、売上表から「女性」のみにフィルタをかけ、年齢を昇順で並べ替える作業であれば次のとおりです。
なお、マクロの記録が開始されると、その後の操作は全て記録されます。たとえば、一度フィルタを「男性」にしてしまったため「女性」を選択し直した場合でも、同じように「男性を選択後、フィルタを解除して女性を選択する」という意味のない処理をくり返してしまいます。
ミスもそのまま記録されてしまうので十分に注意しましょう。
(作業例)
- フィルターを設定
- 「性別」の▼をクリック
- 「女性」のみ選択
- 「OK」をクリック
- 「年齢」の▼をクリック
- 「昇順」をクリック
- セル[A1]をクリック
- 下の■をクリックし、記録作業を完了する

記録中は、フィルターをかけたりデータを入力したりすることはもちろん、「セルを選択する」ことも作業として記録されます。
記録の最後の際に選択されたセルがアクティブセルとなるため、完了前に空のセルをクリックして選択しておくとよいでしょう。
ステップ3. 記録したマクロを実行する
マクロを記録し終えた後は、以下の流れでマクロを実行しましょう。
- 「表示」または「開発」タブから「マクロ」をクリック
- 自分が実行するマクロを選択
- 「実行」をクリック
- 「実行」ボタンを押すと、記録した一連の作業が自動で処理されます。

ステップ4. マクロの編集や削除
作成したマクロを削除する場合は以下の流れで行います。
- 「表示」または「開発」タブで「マクロ」を選択する
- 編集するマクロ名を選択する
- 「削除」をクリックすると記録したマクロが削除される


編集したいときは、2.でマクロを選択した状態で「編集」をクリックしましょう。VBEと呼ばれるマクロの編集画面に移ります。
VBEには記録した作業内容がVBA(マクロを記述するためのプログラミング言語)に変換して表示されており、これを直接編集することで処理内容も調整が可能です。VBAの知識が必要となるため、慣れてきたら試してみましょう。
VBAを使ってマクロを作成・実行する方法
VBAを使うとより複雑なマクロを組むことができ、関数の作成や条件分岐ができるようになります。以下で、VBAを使ってマクロを作る方法を紹介します。
VBAでマクロを作る方法
まずは、以下の手順でマクロを作りましょう。
VBA上でマクロを実行する方法
Visual Basicからマクロを実行できるため、コードを書いた後に正常に機能するか試したい場合は実行してみましょう。

マクロの実行ボタンは、メニューバーにある三角のボタンです。これを押すと実行できます。
Excelのマクロを使う際に必須の操作方法
Excelのマクロをくり返し使いたい場合、必ず以下の2つの作業が発生します。
- 作成したマクロを保存する
- Excelのマクロを有効にする
それぞれの方法を実際のExcelの画面を交えて紹介しているので、1つずつ確認していきましょう。
作成したマクロの保存方法
作成したマクロは、保存するときにマクロが使える「ファイルの種類」を選択する必要があります。
1回かぎりの場合は保存せずに閉じても問題ありませんが、ファイルを閉じたあとも同じマクロを使用したい場合や、マクロつきのファイルをほかの人に送付したい場合は以下の流れで作業しましょう。
- Excelの「ファイル」タブをクリックする
- 「名前を付けて保存」をクリックする
- ファイルの種類を「マクロ有効ブック(*.xlsm)」に変更して保存する

通常のExcelファイルは、「Excel ブック(*.xlsx)」として保存されます。保存の際にマクロ有効ブックに変更しておかないと、後から開いたときにマクロを実行できません。
せっかく作ったマクロが消える場合もあるので、必ず「マクロ有効ブック(*.xlsm)」を選択して保存しましょう。

Excelのマクロを有効にする方法
マクロが設定されたExcelは、デフォルトの設定でマクロの実行が無効(警告を表示してすべてのマクロを無効にする)になっています。これは、コンピュータウィルスなどのマルウェアがマクロ機能を悪用することがあるためです。
設定で警告を無視することも可能ですが、セキュリティ上推奨されてないため、都度有効化の作業をしましょう。

マクロが設定されたExcelを開くと、デフォルトの設定ではこのような表示が出るようになっています(※2023年3月現在。Microsoftのセキュリティ更新により変更となる可能性あり) 。
このような表示になるのは、メールなどから入手したExcelはもちろん、自身が作成したファイルを初めて実行する際にも同様です。
マクロを実行できるようにするには、このファイルの出どころが安全であることを十分に確認した上で、「コンテンツの有効化」をクリックします。
トラストセンターでマクロの有効/無効を変更する
上記にてご紹介した方法はマクロを都度有効にするものでしたが、Excelの設定でマクロの有効/無効を変更することもできます。
なお、この方法で設定を変更するとセキュリティ上推奨されない状態になる可能性があります。特に不都合がなければ、上記の方法で有効にすることが推奨されます。
Excelの設定を変更するには、「ファイル」タブをクリックし、左カラム下部にある「オプション」をクリックします。下図のオプションメニューが表示されるので、「トラストセンター」をクリックします(※バージョンによっては「セキュリティセンター」の名称になっていることもあります)。

トラストセンターのメニューから「マクロの設定」をクリックします。

デフォルトでは「警告して、VBAマクロを無効にする」になっています。この設定にしていると、上記のようにファイルを開いたときにセキュリティの警告が表示され、マクロを都度有効にできます。
1つ目の「警告せずにVBAマクロを無効にする」では、マクロは無効にされ、セキュリティの警告も出ません。
3つ目の「電子署名されたマクロを除き、VBAマクロを無効にする」では、信頼されている発行元により電子署名が付与されている場合にマクロを実行し、そうでない場合マクロは無効にされセキュリティの警告が表示されます。
4つ目の「VBAマクロを有効にする」では、すべてのマクロが確認なしで実行されますが、推奨されません。この設定ではコンピュータが脆弱な状態になり、マルウェアに感染するリスクが上昇します。
※バージョンや更新によって、名称やオプションの挙動が変わることがあります。(上記は2023年3月時点の情報)
Excelのマクロをより便利に使うための操作
マクロの作成から実行、保存がスムーズにできるようになったら、さらに便利に使うための方法も押さえておきましょう。特に重要なのは、次の2つです。
- ワンクリックでマクロが開始できる実行ボタンを作成する方法
- マクロ対応の新規ファイルが簡単に作れる「テンプレート」を作成する方法
どちらも作業をより効率化したり、他の方とマクロを共有したりするのに役立ちます。ここからは実際の画面を交えてご紹介するので、ご参考ください。
マクロの実行ボタンを作成する方法
ルーチンワークをマクロ化した場合、毎回「表示」タブから使用するマクロを選ぶのは面倒です。Excelのシート上にボタンを設置しておくと、クリックひとつで作業が完了できます。
「開発」タブの「挿入」を選択する
表示された「フォームコントロール」から、長方形の「ボタン(フォームコントロール)」をクリックする
セルをドラッグし、ボタンの位置とサイズを決定する
ドラッグが完了すると自動的に「マクロの登録」ダイアログボックスが表示される
登録したいマクロを選択し「OK」を押せば、ドラッグした場所がボタンになる

作成したボタン上で右クリックし「テキストの編集」を選ぶと、ボタンの表示名を変えることも可能です。どのようなボタンか分かりやすくしたい場合は名前を変更しておきましょう。

他に、「挿入」タブの「図形」から作成したオブジェクトに、マクロを登録することもできます。任意の図形を右クリックし、「マクロの登録」からマクロを選択しましょう。
マクロ対応のテンプレートを作成する方法
作成したマクロを含むファイルを、ひな型としてほかの文書を作成するのに流用する場合には、テンプレートとして保存すると便利です。
テンプレートとして保存すると、元ファイルをコピーする手間なく新しいファイルを作成できるようになります。テンプレートにする場合は次の手順で保存しましょう。
- Excelの「ファイル」タブをクリックする
- 「名前を付けて保存」をクリックする
- ファイルの種類を「Excel マクロ対応テンプレート(*.xltm)」に変更して保存する
テンプレートは通常、個人のPCごとに保存されます。他の社員に共有したいときは、各人でテンプレートとして保存してもらうか、保存場所をOneDriveなど共有ネットワーク上に変更しましょう。

マクロに関するショートカットキー
ショートカットキーを活用することで、さらに業務の効率を上げられます。
マクロを操作するショートカットキー
マクロを作成・実行する際に便利なショートカットキーを紹介します。

「Alt+F8」は初心者の方からVBAを学んでいる方まで使用頻度が高いのでぜひ覚えておきましょう。
「Alt+F11」は、VBAが理解できるようになってきた中級者以上向けです。
作成したマクロに任意のショートカットキーを割り当てる方法
作成したマクロに対して、任意のショートカットキーを割り当てることも可能です。よく使うマクロに設定しておけば、キーボードだけで素早くマクロが実行できます。
ショートカットキーは、「Ctrl」といずれかのキーを自由に組み合わせることが可能です。
設定の手順は次のとおりです。
- 「表示」または「開発」タブで「マクロ」を選択する
- 編集するマクロ名を選択する
- 「オプション」をクリックして、任意のショートカットキーを設定
- 「OK」をクリックする
マクロを活用して業務効率を上げよう
Excelのマクロはルーチン作業の自動化が得意です。データ入力や集計でマクロが使いこなせると、作業スピードが数倍~数十倍にアップする可能性もあります。
業務効率が上がって余裕が出れば、さらなる効率化のアイデアを考えたり、クオリティを上げる工夫をしたりする時間も確保しやすくなります。
結果的に、顧客に対してもより上質なサービスを提供できる体制が整うため、マクロを事務作業に導入する価値は高いと言えるでしょう。小さな効率化の積み重ねが顧客の利益につながります。
まずはここでご紹介したような基礎から、業務の効率化に挑戦してみてください。

![[JAPANESE] Excel Guide_image](https://no-cache.hubspot.com/cta/default/53/527f1fc4-c12b-43b0-8d4e-1beb024c471b.png)