トップページ > ソフトウェアの操作 > Excel でマクロのプログラムを書いて作成方法と実行する方法

Excel でマクロのプログラムを書いて作成方法と実行する方法


[初回公開] 2010年03月08日

Excel にはマクロと呼ばれる自動的に処理を行う機能があり、同じ操作を繰り返す場合はマクロを利用することで数秒で終わらして作業効率を図ることができるため、そのマクロのプログラムして作成する方法と実行する方法について紹介する。

Excel でマクロのプログラムを書いて作成方法と実行する方法

1. マクロとは

マクロとは作業を自動化する機能のことで、Excel など Microsoft 社の各ソフトウェアに搭載されている。
マクロを利用することでマウスやキーボードを使った一連の手作業をボタンをクリックするだけで行うことができ、例えば入力したデータを集計してグラフ化した後に印刷や PDF に出力する流れを瞬時に終えられる。

Excel で行える操作はほぼマクロで実行することができ、マクロ用にプログラムを行えばマウス操作ではできない情報収集やデータの加工などさらに用途を広げることが可能である。
筆者においてはサーバやネットワーク機器のリソースの使用率を Excel にコピー&ペーストすることで日ごとにグラフ化し、ログイン中のユーザ名を取得して表紙に作成者として記名するマクロをよく利用している。
さらに報告書として提出できるように A4 サイズに体裁を整えて PDF 化するところまでマクロで行わせているので、手作業で数時間かけて作成していた頃に比べると数秒で終わり、入力ミスが無いため精度の高い資料作成を行える状態でありマクロは非常に便利である。

2. マクロの作成方法

Excel でマクロする方法には 2 通りあり、実際にマウスやキーボードの操作を記録させる方法と、操作や処理をプログラムで書く方法である。

2-1. 操作をマクロに記録する

マウスやキーボードの操作をマクロに記録させるためには、Excel の上部メニューより「表示 -> マクロ」を選択し、表示される項目から「マクロの記録」をクリックする。

マクロの記録をクリック

次にウィンドウ「マクロの記録」が表示されるため、マクロ名は任意の名称を入力してボタン「OK」を押す。

マクロの記録を開始

ボタン「OK」を押すとウィンドウ「マクロの記録」は閉じ、閉じた後のマウス及びキーボードの操作は全てマクロに記録されるので自動化したい操作を行う。
マクロ記録中は特に画面上に表示されないが、記録を終了させる場合は Excel の上部メニューより「表示 -> マクロ -> 記録終了」を選択するとマクロの記録が終了する。

マクロの記録を終了

2-2. プログラムでマクロを作成する

Excel のマクロをプログラムで作成する場合はプログラムを入力する画面(エディタ)を表示させる必要があるが、Excel の初期状態では上部メニューに無いため、まずはエディタを開くアイコンを上部メニューに配置する。
下図は Excel の初期状態の上部メニューで、「ホーム」や「挿入」など 7 つほどのタブが表示されている。

Excel の初期上部メニュー

マクロの開発機能を表示するために上部メニューより「ファイル -> オプション」を選択して下図のウィンドウ「Excel にオプション」を表示させる。
次に左メニュー欄にある「リボンのユーザー設定」をクリックする。

ウィンドウ「Excel のオプション」を表示

「リボンのユーザー設定」をクリックすると右部にリボン(上部メニュー)に表示するものを選択する設定画面が表示されるので、右列にある「開発」にチェックを入れ、ボタン「OK」をクリックして設定ウィンドウを閉じる。

リボンのカスタマイズ

リボンの設定が完了すると Excel のワークシートに戻り、上部メニューにタブ「開発」が追加表示されているのが確認できる。
タブ「開発」をクリックする各種開発に関わるアイコンが表示され、「Visual Basic」を選択するとマクロをプログラムする画面が表される。

タブ「開発」が表示

マクロのプログラムを行う場合は数の右にある空白のウィンドウに記述する。

マクロのエディタ

Office 製品のマクロは VBA(Visual Basic for Applications)と呼ばれるプログラム言語で開発し、その VBA プログラムを記述するエディタのことを VBE (Visual Basic Editor) と呼ばれている。
VBE は VBA をプログラムする他に文字を入力するテキストボックスや計算結果を表示するラベルなどフォーム画面の作成も行うことができる。

2-3. マクロ付き Excel の保存方法

マクロの記録や VBE で作成したマクロは、通常の Excel を保存する時と同じくに「名前を付けて保存」で保存することができるが、通常の Excel(Excel ブック)の拡張子「.xlsx」はマクロ付きに対応していないため、マクロ付きに対応するために拡張子「.xlsm」の Excel(Excel マクロ有効ブック)で保存する。

3. マクロを実行する方法

Excel で作成したマクロは上部メニューの「表示 -> マクロ -> マクロの表示」を選択することでウィンドウ「マクロ」が表示され、保存中のマクロが一覧表示される。

マクロの一覧をクリック

ウィンドウ「マクロ」の一覧から実行したいマクロを選択し、ウィンドウの右にあるボタン「実行」をクリックすることでマクロが実行される。

マクロの実行

4. マクロを編集する方法

作成したマクロを編集する場合は、上部メニューの「表示 -> マクロ -> マクロの表示」でウィンドウ「マクロ」を表示し、そのウィンドウに表示されるマクロを選択した状態でボタン「編集」をクリックする。

マクロの編集

ボタン「編集」をクリックすると下図のように VBE が表示されるので、プログラムによる編集を行う。
下図は「マクロの記録」で作成したものだが、「マクロの記録」も最終的には VBA で保存されるため編集も VBA にのみの対応となり、プログラムが難しい場合は改めて「マクロの記録」を新規作成してマウスやキーボード操作で作り直す必要がある。

5. マクロと VBA の違い

マクロと VBA の違いは、マクロは自動的に操作や処理を行う機能のことで、VBA はマクロの動きを指示するプロググラム言語のことを指し、厳密には両者は異なるものである。
マクロは前述の通り「マクロの記録」でも作成することができ、VBA の知識が無くてもマクロを取り扱うことが可能である。

関連記事

@webolve をフォローしてください