Excelマクロのススメ

前置き

Excelマクロは便利ですが、ソフト開発の現場でさえ積極的に利用する人は少数派のようです。マクロを書くのが面倒というのが主な原因でしょう(それを解決するのは本記事の目的ではありません)。もう一つの大きな理由は、マクロがメンテ/再利用しにくいことだと思います。この点については、個人用マクロブックを使うと少し改善します。

マクロの難点

普通にマクロを書くと、それは特定のブック(*.xlsや*.xlsx)内に保存されます。このため、以下のようなデメリットを感じます。

  • そのブックを開くたびにセキュリティ警告が出る
  • 複数のブック間でマクロを共有しにくい
  • マクロを作用させたいブックと、マクロを保存したブックが異なる場合の操作が面倒
  • マクロをバージョン管理しにくい

個人用マクロブックを使うと、これらのデメリットを緩和することができます。

個人用マクロブックの特徴

  • ユーザごとに(高々)1つだけ存在する
  • Excelを起動すると、自動的にロードされる
  • セキュリティ警告が出ない

マクロ関連のショートカットキー

本記事で使うマクロ操作のショートカットキーを紹介しておきます。該当する操作が、メニューやツールバー、リボンのどこにあるか分からないときは、ショートカットキーを使ってみて下さい。これらのショートカットキーは、新UIの(つまりリボンが導入された後の)Excelでも有効です。

Alt+T, M, V
マクロエディタを起動する。
Alt+T, M, R
マクロの記録を開始する。
Alt+F8
マクロ一覧を表示する。

個人用マクロブックの作成

マクロエディタを起動して下さい。左上の[プロジェクト]ペインに"VBAProject(PERSONAL.*)"というのがあれば、既に個人用マクロブックを作成済みです。

VBAエディタ

個人用マクロブックが無い場合は、以下の手順で作成できます。

  • マクロの記録を開始
  • マクロの保存先として、[個人用マクロブック]を選ぶ

マクロ記録

あとは、適当に操作してマクロ記録を終了すれば、個人用マクロブックが作成されているはずです。マクロエディタで、好きなようにマクロを編集して下さい。

個人用マクロブックの実体

個人用マクロブックのファイル名はPERSONAL.XLSかPERSONAL.XLSBになります。ファイルの置き場は、ExcelのバージョンやWindowsのバージョンによって異なるようです。下記を探すか、エクスプローラで検索すれば見つかるでしょう。

  • Excelのインストールフォルダの下の、Office\XLStart
  • C:\Users\USERNAME\AppData\Roaming\Microsoft\Excel\XLSTART

個人用マクロの実行

マクロ一覧を表示すれば、普通のマクロと一緒に個人用マクロブック内のマクロも実行できます。

マクロ実行

余談ですが、このダイアログを表示させた直後は、上段のエディットフィールドにフォーカスがあります。この状態で、マクロを選ぼうと思って矢印キーを押しても、期待通りにはいきません。TABキーを1回押せばフォーカスがリストボックスに移るので、それから矢印キーでマクロを選び、Enterキーでマクロを実行すれば良いでしょう。

また、このマクロ一覧には、Publicで引数を持たないSubが全て表示されます。ここに出したくない場合は、Privateにするか、(ダミーの)引数を持たせるか、Functionにすれば良いでしょう。

Last modified:2013/08/12 23:31:22
Keyword(s):
References:[Excelのあれこれ ~ マクロの自動ロード] [Windowsリテラシ]
This page is frozen.