
§.Excelアドインソフトの作り方について
◎アドインって、何やねん!!
今回は、フリーソフトでよく耳にする「アドインソフト」についてお伝えします。
大抵の方はご存知だと思いますが、全く、或いは殆どご存知ない方々のために説明させて頂ます。
まず、Excelのヘルプには以下のように書いてあります。
「アドインは、便利なコマンドや機能を Excel に追加するプログラムです。たとえば分析ツール アドイン
で提供されるデータ分析ツールセットを使用すると、複雑な統計分析や工学分析を簡単に行うことがで
きます。」
またある参考書には、「他のユーザーが使用することを目的とし、マクロプログラムをアドインアプリケー
ションの形式で保存し、Excelの環境で作成された、基本的な機能を拡張するためのツールである。」
何んか、ようわからんなぁ〜!!
と、お嘆きの方も多くおられると思いますが ・ ・ ・ ・
まあ、私のない頭で考えますに、”Excelをより便利にするためのツールである!!”と結論付けます。
もう一言つけ加えるなら、”通常、プログラム(マクロ)はそのプログラムを作成したワークシートでしか作
動しません。しかし、そのプログラムを他のワークシートでも使用できればいいなぁとお考えになったこと
はありませんか!!”。それを可能にするのが、アドイン(ソフト)です。
少しはおわかり頂けたでしょうか?
それでは具体的にどうしたらよいのかを、これからご説明致します。
◎アドインソフトの作り方について
ではその手順について、(但し、これはあくまでも我流のものですが ・ ・ ・)
(1)MenuBarやToolBarに登録するマクロ(プログラム)を標準モジュール又はユーザーフォームモジ
ュールで作成する
(2)ThisWorkbookオブジェクトの「Workbook_AddinInstall」プロパティでMenuBar等の追加プロクラム
を作成する ⇒ アドインをインストールした時に、MenuBarを追加する
(3)ThisWorkbookオブジェクトの「Workbook_AddinUninstall」プロパティでMenuBar等の削除プロクラ
ムを作成する ⇒ アドインをアンインストールした時に、MenuBarを削除する
(4)VBE[ビジュアル・ベーシック・エディタ] ⇒ [ツール] ⇒ [プロジェクト・プロパティ]でマクロ(プロ
グラム)を保護する
(5)VBEからExcelに戻り、[名前を付けて保存]で、アドイン・ファイルとして保存する
という流れになります。
それでは、簡単なマクロを使って実際に作ってみましょう!!
以前、Excelワンポイントレッスン(3)で説明させて頂きました。”Officeアシスタントに挨拶をさせる” と
いうプログラムをアドインにしてみましょう。⇒ 今回は、MenuBarに登録します
イルカの「カイル君」が挨拶するプログラムです。
Sub hellodolphin ()
With Assistant.New Baloon
Assistant.FileName = ”Dolphin.acs”
.Heading = ”まいど!!おおきに。わては、” & vbCrLf & _
Assistant.Item & ”といいまんねん。”
.Show
End With
End Sub

と、なります。尚、Officeアシスタントに関する詳細は、Excelワンポイントレッスン(3)をご覧下さい。
続いて、上記(2)の作業ですが、以下のようになります。
Private Sub Workbook_AddinInstall()
Set Menu = Application.CommandBars(”Worksheet Menu Bar").Controls _
.Add(Type:=msoControlPopup) ⇒ 新たにMenuBarを追加する
Menu.Caption = ”アシスタントの挨拶” ⇒ MenuBarの名前は”アシスタントの挨拶”です
Set SubMenu1 = Menu.Controls.Add ⇒ MenuBarにサブMenuを追加する
SubMenu1.Caption = "カイル君登場” ⇒ サブMenuの名前は”カイル君登場”です
SubMenu1.OnAction = ”hellodolphin” ⇒ サブMenuにマクロを登録します
End Sub
続いて上記(3)の作業ですが、こんな感じになります。
Private Sub Workbook_AddinUninstall()
Application.CommandBars.(”Worksheet Menu Bar").Controls _
(”アシスタントの挨拶”).Delete ⇒ MenuBarを削除します
End Sub
この(2)と(3)のマクロ(プログラム)をThisWorkbookオブジェクトで作成したものが次のものです。
VBAProjectのツリーでThisWorkbookの枝をダブルクリックし、モジュール側の左上のドロップ・ダウ
ンリストを”(General)”⇒”Workbook”に変更します。右上のドロップ・ダウンリストをクリックしたら、
「AddinInstall」や「AddinUninstall」が登録されています。つまり、左側はオブジェクトの項目を、右側
はプロパティの項目を表示しています。尚、私は直接手入力しました。
ここまでできたら90%完成したみたいなものです!!
あとは、VBEでマクロに保護をかけます。 → (4)の作業です
そして、VBEからExcelに戻り、[名前を付けて保存]で、アドイン・ファイルとして保存します

↓

ちょうど(5)の作業が終わったところです。めでたし、めでたし ・ ・ ・ ・ ・ と。
これで、アドインの作成までは終わりましたが、肝心を忘れています。
「どうしたら、使えんねぇ〜 !!」
と、いうことです。
もちろん、これもお伝えします。そんな難しいことではありませんから。
◎アドインの登録(インストール)について
まず、MenuBar[ツール] → [アドイン]をクリックします。

次にアドイン登録用のダイアログが現れますので、希望するアドイン名にチェックを入れて、[OK]
ボタンを押します。これで完了です。
となり、次のようにMenuBarに表示されます。
もしアドインを終了したいのなら、もう一度[ツール]→[アドイン]からアドイン登録用のダイアログを呼び
出し、終了するアドイン名のチェックを外します。 これで終わりです。
最後に、上記サンプルだけでは少し面白くないので ・ ・ ・ ・
Excelワンポイントレッスン(4)でお伝えしました”数値検索”のマクロをアドインにしてみました。
ワークシート内の各セルに数値が多くあった場合 、自分が思っている数値はどのセルにあるのかを
、セルに色を付けて知らせます。詳細は、Excelワンポイントレッスン(4)をご覧ください。
圧縮ファイル”addin_soft.lhz”にしてありますので、下からお好きダウンロードしてください!!
<< ”addin_soft.lhz”の詳細について >>
圧縮ファイル”addin_soft.lhz”には、以下の3つのファイルが入っています。
(イ) aisatu.xls → イルカの”カイル君”のあいさつする分です。
(ロ) AddInSamp.xls → 数値検索の分です。
(ハ) 数値Data.xls → 数値検索のサンプルデータです。
”addin_soft.lhz”を解凍したら、(イ)(ロ)のファイルをExcelを起動させて、[名前を付けて保存]で、
アドイン・ファイルとして保存してほしいのです。 → 以前の(5)の作業です。
つまり、”xlsファイル → xlaファイル”に変換する練習です。
トライしてみてください ・ ・ ・ ・
(ハ)は、(ロ)がアドインとして登録できた後に、開いてください。マクロは入っていません。
では、より良いアドイン・ライフをエンジョイしてください!!
・ExcelVBAで特定セルを画像(jpeg・gif)ファイルに変換する
このページに関するご意見がございましたら、こちらまで連絡下さい。