【Excel VBA】Excelマクロをアドイン化する方法。

VBA

Excelマクロをアドイン化する方法です。

マクロでアドイン機能を作成する

まずはマクロでなにか作ります。
フォームを作るもよし、処理を作るもよし(マクロとかVBAについてはここでは触れません)

今回、試しにこんなフォームを作ってみました。

フォーム画面

このフォームは「設定画面を開く」プロシージャを実行すると表示されます。

マクロの実行画面

アドイン形式で保存する

作成したマクロ(xlmx形式)を、アドイン(xlam形式)として保存します。
「名前を付けて保存」で、ファイルの種類を「Excel アドイン(*.xlam)」で保存。

Excel名前を付けて保存

ファイルの種類にアドイン形式を選択すると、以下の保存場所が勝手に指定されます。

C:\Users\ユーザー名\AppData\Roaming\Microsoft\AddIns

特に変更不要です。そのまま保存しましょう。

アドインをインストールする

作成したアドインをExcelにインストールしていきます。

補足
アドインを作成する作業は、先ほどアドイン形式で保存したところで終わっています。
インストール作業はExcelのソフトウェアに対する作業なので、Excelが開いた状態であれば何でもOKです。先ほどまで触っていたExcelファイルでもOK、新規ブックでもOK、別PCのExcelでもOKです(別PCのExcelにインストールする場合は、先ほど作成したアドインファイルを別PCに持っていって下さい)

一度インストールしたアドインは、アンインストールするまで常に使用できます。

まず「ファイル」「オプション」から「Excelのオプション画面」を開く。
サイドメニューより「アドイン」を選択。
開いたアドインメニューの下の方にある「設定(G)…」ボタンをクリック。

Excelのオプション画面

アドイン画面が開くので、「参照(B)…」から先ほど作成したアドインファイルを選択。その後「OK」。

アドイン画面

これで、アドインのインストールは完了です。

リボンにアドイン機能を表示させる

アドインのインストールが完了しても、アドインした機能はまだExcelの画面上に表示されません。
リボンにアドインした機能を表示させていきます。

リボン

再度「Excelのオプション画面」を開き、サイドメニューより「リボンのユーザー設定」を選択。
リボンのカスタマイズ画面が表示されるので、こんな感じで「新しいタブ」「新しいグループ」を追加します。
「名前の変更(M)…」で名前とかアイコンも自由に設定できますが、今回は割愛。

Excelのオプション画面

続いて「コマンドの選択」にて「マクロ」を選択。

リボンのカスタマイズ画面

インストールしたアドインのプロシージャが表示されるので、先ほど作成した「新しいグループ」に追加します。こんな感じです。

リボンのカスタマイズ画面

「OK」ボタン押したら完了。リボンに新しいアドイン機能が表示されました。

リボンに表示したアドイン

クリックしてみると、無事作成したフォームが表示されます。

アドインの動作確認

こんな感じでリボンにアドイン機能を表示させることができます。
今回は「新しいタブ」を作りその配下にアドイン機能を表示させましたが、例えばホームタブの下に表示させることとかも可能です。

ちなみに

リボンに表示できるのはプロシージャ単位なので、例えばこんな感じで作ったマクロを

アドイン化して、こんな感じでリボンに表示させることもできます。

アドイン化サンプル

下手にフォームを作るよりリボンに組み込んでしまった方が、わざわざフォームを起動する手間も無いし、見た目がスッキリします。また何より複数ブックを起動している時の動作が安定します!

クラウドだAIだという昨今でも、クラウドソーシングなんかにはまだまだVBA案件が多いです。
クライアントの要望通りにガリガリとフォーム開発する前に、アドインで楽に要件を満たせないか確認したいところですね。

コメント

タイトルとURLをコピーしました