『マクロの導入で、数時間かかっていた作業が
数分またはワンクリックで終わるようになった』
業務効率化を調べると上記のような事例を目にします。
これが本当ならばマクロはすごく便利だな……と思いつつ
マクロは難しそう…と先入観が勝ち自分には無理だなっと
あまり深く調べていない方も多いのではないでしょうか。
そこで「マクロとはいったいどのような機能なのか? 」
「マクロを習得するとどんなメリットが得られるのか?」
などの疑問を解決し、マクロを始めてみるきっかけの
知識をご紹介させて頂きます。
まず「マクロ」とは?
【マクロは“複数の操作をまとめて呼び出す”機能】です。
アプリケーションソフトにおけるマクロとは
「複数の操作をまとめて必要に応じて呼び出せるようにする機能」を
指します。
主にExcelの自動化で使用されています。
データ集計や分類、シートの印刷などさまざまな作業を自動で
行わせることができます。
ほかにもMicrosoft製品の
Word、PowerPoint、Accessや
Adobe製品のIllustrator、Photoshopなどマクロ機能
を持つ製品は多数存在します。
Officeにおいてマクロの操作内容を記録するためのプログラミング言語を
VBA(Visual Basic for Applications)といいます。
VBAを使いこなせるほどマクロでより幅広い業務を自動化できるようになります。
マクロは便利な機能、VBAはそれを実現するための部品という感じでしょうか。
また、Microsoft製品と同様にビジネスで用いられることの多い
GoogleスプレッドシートやGoogleドキュメントでは
Google Apps Scriptという言語がVBAに相当し、Apps Scriptを
用いてマクロの操作を行うことができます。
次に「マクロ」でできることとは?
業務の自動化
アプリケーション内で行う業務はすべてマクロで自動化することができます。
例えばExcelでは、
「1000件のブックから必要なデータのみを抽出し
1つのブックにグラフ表示する」
「ワンクリックで領収書やシフト表を発行する」といった操作も自動化できます。
ほかのMicrosoft製品との連携
Microsoftアプリケーション内で連携させて用いられるのもマクロの利点です。
「Excelのデータをプレゼンで用いるためPowerPointのスライド内に埋め込む」
「Accessに蓄積したデータを必要な分だけExcelに取り出す」
など便利な活用法は1つ1つ紹介しても紹介しきれないほどに
多く存在します。
Webからのデータの取得
いわゆるWebスクレイピング(Webからのデータの取得)もVBAを理解すれば、
開発環境を構築する手間なく行うことができます。
サイトから抽出したデータを直接セルに設定できるため
スムーズにデータ分析に移行できる点も魅力的です。
メールの作成・送信
ExcelとMicrosoft Outlookなどのメールソフトを連携させることで、
メールの作成・送信を自動で行えます。
日報やメルマガなど定期的かつ大体同じフォーマットで
作成することになるメールは、
自動作成・自動送信することで手間を大きく削減できます。
ここからは
画像付きで少しマクロを紹介させて頂きます。
①「開発」タブを有効にする
Excelマクロは「開発」タブから操作します。
「開発」タブはデフォルトではリボンに表示されていないため
リボンで右クリックを行い、「リボンのユーザー設定」を選択します。
②マクロを記録する
開発タブにはマクロ/VBAを操作する機能があります。
今回はそこから「マクロの記録」機能を使い、セルの文字色を自動で赤色にするマクロを作成します。
まずA1セルに文字を入力し、
「マクロの記録」ボタンをクリックします。
すると、「マクロの記録」ウィンドウが立ち上がります。
③マクロを呼び出す
A2セルにも「文字色赤」と入力し
選択したまま「開発」タブの「マクロ」ボタンをクリックします。
すると「マクロ」ウィンドウが立ち上がるので②で保存した
「文字色を赤に変更」を選択し、「実行」します。
実行すると「A1の文字色赤」と同様に赤く文字色が変更され
マクロが実行されます。
そうするとA2で入力した
文字色が赤色に変更されます。
マクロの中身は「開発」タブの左端にある
「Vsual Basic」ボタンをクリックすることで確認できます。
このとき立ち上がるウィンドウはVBE(Vidual Basic Editor)
画面と呼ばれるもので、
ここから直接VBAでマクロを記述して作成することも可能です。
作成したマクロは「標準モジュール」内に記録されており
モジュール名をクリックすれば中身を見られます。