ビジネスお役立ち情報 > 仕事効率を上げるパソコン手帖 > Excelマクロによる定型処理で仕事効率を上げよう!

仕事効率を上げる「パソコン手帖」仕事効率を上げる「パソコン手帖」

仕事効率を上げるパソコン手帖のトップへ

Excelマクロによる定型処理で仕事効率を上げよう!

仕事などで日常的にExcelを使う人は多いだろう。毎日のように作業をしていると、頻繁に同じ操作を繰り返すケースがよくある。このような定型処理を行うときは、Excelのマクロ機能を使えば、作業効率が大幅に向上する。そこで今回は簡単にマスターできる、Excelのマクロ機能について解説する。

定型操作を自動化するExcelマクロを活用しよう

Excelで日々行っている作業を振り返ってみると、「同じ作業を何度も繰り返している」というケースがけっこう多い。例えば「数値を入力して背景に色をつける」「セルに定型句を入力する」など。

このような作業は、一度きりであれば大して時間がかかるわけではない。しかし毎日何度も繰り返していると、膨大な時間になってしまう。これらの作業をより短時間で行えるようにすれば、仕事効率は格段に改善する。そのために役立つのが、今回のテーマであるマクロ機能だ。

Excelのマクロ機能とは、簡単に言えば「一定の操作を記録する機能」のことだ。例えば「B1〜B5のセルを選択し、文字を太字にし、文字色は白、背景をグレーにする」といった操作を行う場合、実際には以下のような作業が必要となる。

(1) B1セルにカーソルを合わせる
(2) B1〜B5を選択する
(3) 「B」(太字)ボタンをクリックして文字を太字にする
(4) 「フォントの色」ボタンをクリックする
(5) 文字色として白を選択する
(6) 「塗りつぶし」ボタンをクリックする
(7) 背景色としてグレーを選択する

何でもない作業のようだが、実に7ステップもの操作を行っているわけだ。これを1日10回×10日繰り返すと、トータルで700ステップもの操作を行わなければならないわけで、所要時間はばかにならないものになってしまう。

Excelのマクロ機能を使えば、このような作業を記録し、ワンタッチで再現できる。記録した操作の再生をショートカットキーに割り当てておけば、1ステップで再現できるので、業務の効率が格段に上がるというわけだ。

本格的に作業の自動化を極めようと思ったら、「Excel VBA」というプログラミング言語を使うことになるが、マウスやキーボードでの操作を記録するだけなら「マクロの記録」という機能を使えば簡単に行える。「マクロの記録」機能の使い方は、以下で詳しく解説するのでぜひマスターしてもらいたい。

マクロの記録で定型操作を学習する

それでは早速「マクロの記録」機能を使ってみよう。なお、今回の解説は「Excel 2016」での操作となっているので、それ以前のバージョンではメニューなどの項目が異なっている場合がある。

「マクロの記録」は、「表示」タブの「マクロ」ボタンから呼び出せる。「マクロ」ボタンの▼をクリックして、プルダウンメニューから「マクロの記録」を選択して操作を記録しよう。すると「マクロの記録」ダイアログが表示されるはずだ。

「マクロの記録」を選択した画面

マクロの記録を開始する。Excelの「表示」タブで「マクロ」ボタンの下の▼をクリックし、「マクロの記録」を選択する。

「マクロの記録」ダイアログで「OK」を選択した画面

「マクロの記録」ダイアログが開く。ここではとりあえず「OK」をクリックして、作業を進めよう。

「マクロ名」などの設定項目があるが、まずは標準のままで構わないので「OK」ボタンをクリックしてみよう。するとキーボードとマウス操作の記録が開始される。今回は先ほど例に出した、以下の作業を記録してみる。

(1) B1セルにカーソルを合わせる
(2) B1〜B5を選択する
(3) 「B」(太字)ボタンをクリックして文字を太字にする
(4) 「フォントの色」ボタンをクリックする
(5) 文字色として白を選択する
(6) 「塗りつぶし」ボタンをクリックする
(7) 背景色としてグレーを選択する

選択したセルの書式が変更された画面

マクロの記録が開始されたら、記録したい作業を行う。今回は「B1〜B5セルを選択し、文字を太字にして、フォントの色を白に変更、背景色をグレーで塗りつぶす」という処理を行った。

上記の作業を行ったら再び「表示」タブに戻り、「マクロ」ボタンのプルダウンメニューで「記録終了」を選択する。これで「Macro1」にこの操作が記録された。

「記録終了」を選択した画面

記録したい作業が終了したら、「表示」タブに戻り、「マクロ」ボタンのプルダウンメニューで「記録終了」を選ぶ。

「マクロの記録」機能を開始すると、基本的にはExcelの操作が記録される。ただしIMEのON/OFFといった操作は記録されない。また「ダイアログボックスを表示して設定内容を変更する」という操作を記録した場合でも、設定内容は記録されるが、ダイアログボックスを開いたり閉じたりといった操作そのものは記録されない。

記録したマクロを実行する

次に記録したマクロを実行してみよう。ここではテスト用に新しいシートを作成して、B1〜B5に文字を打ち込んでおく。次に「表示」タブで「マクロ」ボタンをクリック、あるいは「マクロ」の「▼」ボタンをクリックして「マクロの表示」を選択する。

「マクロの表示」を選択した画面

次に記録したマクロを実行してみよう。今回は、同じExcelファイル内の別シートに、先ほどの例と同様の構成の表を用意して、それに「Macro1」で記録した処理を行う。「表示」タブで「マクロ」ボタンのプルダウンメニューを選択し、「マクロの表示」を選択する。

するとダイアログボックスが開いて、記録したマクロの一覧が表示されるので、実行したいマクロを選択して「実行」ボタンを押す。すると先ほど記録した操作と全く同じ操作が瞬時に行われるはずだ。

「Macro1」を選択して「実行」ボタンを選択した画面

「マクロの表示」ダイアログが表示されたら「Macro1」を選択して「実行」ボタンを押す。

選択したセル内の書式が変更された画面

するとこのように、先ほど行った「B1〜B5セルを選択し、文字を太字にして、フォントの色を白に変更、背景色をグレーで塗りつぶす」がこの表に対しても適用された。

(1) 「マクロ」ボタンをクリックする
(2) 「Macro1」を選択
(3) 「実行」ボタンをクリック

今まで7ステップかかっていた作業が上記の3ステップに短縮されたことが分かる。さらに作業を短縮する方法がある。それはショートカットキーにマクロを登録してしまうことだ。

ショートカットキーにマクロを登録するには、「マクロの記録」を開始したときに、「マクロの記録」ダイアログで「ショートカットキー」の項目を変更しておく。また「マクロの表示」で「オプション」をクリックすれば、記録済みのマクロにショートカットキーを割り当てることができる。

「マクロの記録」ウィンドウで、ショートカットキーの項目を設定する画面

マクロをショートカットキーに登録しておくときは、「マクロの記録」を開始したときに表示される「マクロの記録」ウィンドウで、ショートカットキーの項目を設定しておく。

「マクロの表示」を開いてマクロを選択し、「オプション」をクリックした画面

いったん記録したマクロにショートカットキーを割り当てたいときは、「マクロの表示」を開いてマクロを選択し、「オプション」をクリックする。

「マクロ オプション」ダイアログで、ショートカットキーの割り当てを変更した画面

「マクロ オプション」ダイアログで、ショートカットキーの割り当てを変更することができる。

ショートカットキーは、Ctrlキー+「任意のキー」となるが、既にExcelで割り当てられているショートカットキーを登録すると、もともとのショートカットが使えなくなる。アルファベットであれば、J、M、Q、Tなどは空きなので、利用してみるといい。

ショートカットキーまで使えば、今回の例で言えば7ステップかかっていた作業が、1ステップまで短縮される。

マクロの記録をより便利に

上記の例では「B1〜B5のセルを選択」という具合に、セルの位置を固定した状態でマクロを記録した。これだとC列のセルに同じ処理をしたいといった場合には、またマクロを記録し直さなくてはならない。

そこで「現在選択しているセルから、4個下のセルまで太字にし、文字色を白、背景色をグレーにする」というふうに変更すれば、C列でもD列でも同じように処理が行える。この場合はマクロを記録する前に、いったん「マクロ」ボタンのプルダウンメニューから「相対参照で記録」を選択してから記録を始めればよい。

「マクロ」ボタンのプルダウンメニューで「相対参照で記録」を選択した画面

マクロの「相対参照」を使いたいときは、「マクロ」ボタンのプルダウンメニューで「相対参照で記録」を選択する。

「マクロ」ボタンのプルダウンメニューのアイコンにグレーの縁取りが表示された画面

ちょっと分かりづらいかもしれないが、「相対参照で記録」をオンにすると、「マクロ」ボタンのプルダウンメニューのアイコンの周囲にグレーの縁取りが表示される。画像上は相対参照で記録オフ状態、画像下が相対参照で記録オン状態だ。相対参照をオンにした状態で「マクロの記録」を開始する。

D1にカーソルを合わせた状態でこのマクロを実行する画面

今回は「現在選択しているセルから、4個下のセルまで太字にし、文字色を白、背景色をグレーにする」という処理を、相対参照で「Macro1」に記録してみた。D1にカーソルを合わせた状態でこのマクロを実行する。

D1〜D5までのセルに処理が適用された画面

するとD1〜D5のセルに処理が適用される。このように相対参照を使うと、ワークシートの好きな箇所で定型処理を実行できる。

さらにマクロを頻繁に使うようであれば、いちいち「表示」タブに切り替えるのも面倒だ。この場合はステータスバーに「マクロの記録」ボタンを表示しておくとよい。ステータスバーに「マクロの記録」ボタンを表示するためには、ステータスバーの左端を右クリックし、「マクロの記録」にチェックを入れておく。

「マクロの記録」にチェックを入れた画面

ステータスバーに「マクロの記録」ボタンを表示する場合は、ステータスバーの左端を右クリックしてメニューを開く。ここで「マクロの記録」にチェックを入れておく。

ステータスバーの「マクロの記録」ボタンをクリックすると、ダイアログボックスが表示され、マクロの記録が開始される。マクロの記録を終了するにはステータスバーの「■」ボタンをクリックすればいい。

画面の「準備完了」の右にあるボタンがステータスバーの「マクロの記録」ボタン示した画面

画面の「準備完了」の右にあるボタンがステータスバーの「マクロの記録」ボタン。このボタンをクリックすればマクロの記録が開始される。

マクロ実行取り消し・削除の仕方

マクロによって実行した処理は、通常の「元に戻す」では元に戻らない。もしマクロの実行結果に不安がある場合は、マクロ実行前にブックを保存しておこう。マクロを実行して思いどおりの結果にならなかったら、保存せずに終了して、また以前の状態から作業を開始しよう。

またマクロを間違って登録した場合や、不要になった場合は、使わないマクロは削除しておいた方がいいだろう。この場合は「表示」タブのマクロボタンをクリックし、使わないマクロを選択して「削除」ボタンをクリックすればいい。

「削除」ボタンをクリックした画面

使わないマクロは「マクロの表示」ダイアログで選択して「削除」ボタンをクリックすれば削除できる。

ここまで紹介してきたとおり、マクロを活用すれば、何度も繰り返す定型の作業に使う時間を格段に短縮することができる。ぜひ活用してもらいたい。

テキスト/芝田隆広

企業のITセキュリティ講座