エクセルで作成した自作のマクロ、マクロを作成したブックだけで使用したりしていませんか?
じつは。ブック関係なく、自分のPC上(アカウント)でどのブックでも使えるようにすることができるのです。
しかも、マクロファイルにしなくてもマクロを使えるのです。
その方法についてまとめます。
この記事でできること
自分のPC上で動作するExcelに自作のツールを追加する
試しにセルのカーソルの位置をホームポジション(最初のシートのA1)にして保存するマクロをアドインとして使えるようにする
エクセルでアドインの設定をする
まずは自分の作ったVBAをアドインで使えるように設定します。
(開発タブの表示方法は略します)
実験用に簡単なコードをVBE上に書きます。
メッセージボックスで「こんにちは」と表示するだけのコードです。
Sub オリジナルアドイン()
MsgBox "こんにちは"
End Sub
次に、これをアドインのファイル形式で保存します。
エクセルの画面に戻り、「名前を付けて保存」してください。
このとき、ファイルの拡張子を「Excelアドイン(*.xlam)」に変更するのを忘れないでください。
また、アドイン形式で保存すると、隠しファイルに保存されますので、配布等する場合のために保存先をメモしておいてください。
ファイル>オプションの順に選択し、オプション画面で「アドイン」を選択すると、先ほど作成したアドインが表示されます。確認したら右下の「OK」ボタンを押下してください。
確認できたら、
ホーム>オプション>リボンのユーザー設定
で、先ほど作ったマクロをリボンに追加してください。
プルダウンで「マクロ」を選ぶと、作成したプログラムが表示されます。
せっかくなので、自分用にタブ追加してそこにマクロを設定します。
タブの下のグループを選択して「追加(A)」を押下すると、グループの下に自作マクロを追加できます。
「名前の変更」でマクロの表示名やアイコンを変更できるので適宜カスタマイズしてください。
右下の「OK」ボタン押下後、画面にもどって試してみましょう。
簡単でしたね。
では続けて実用性のありそうな、ホームポジションにもどしつつセーブするマクロを書いてみます。
Sub ホームポジションに戻して保存()
Worksheets(1).Activate
Range("A1").Select
ActiveWorkbook.Save
End Sub
同じようにリボンに追加すると使えるようになります。
上手く動作しないとき
ボタンを押したのにエラーして想定の動作をしないときがあります。
アドインとして保存する前のエクセルファイルを読み込む設定が残ってしまって、意図したアドインファイルを読み込まない場合があるのです。
そのときは、いったんExcelをとじ、アドインの設定からやり直してみてください。
ホーム>オプション>アドイン
から、画面下部「管理(A)」の並びの「設定(G)」押下。
その後リボンの設定をし直してみてください。
一度動作すれば、あとはプログラムを作成し、リボンに設定してくだけで使用できます。
作成したアドインは配布も可能です。
エクセルを閉じてもうまくいかない場合は、PC再起動でうまくいくこともあるので試してみてください。