[PR]子育てママさんへ:3年毎に15万円うけとれる保険?


「ExcelVBAで自動勤務表を作成する」を公開しました!!


§.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”の詳細について >>

    圧縮ファイル”addin_soft.lhz”には、以下の3つのファイルが入っています。

    (イ) aisatu.xls    →  イルカの”カイル君”のあいさつする分です。

    (ロ) AddInSamp.xls →  数値検索の分です。

    (ハ) 数値Data.xls  →  数値検索のサンプルデータです。

    ”addin_soft.lhz”を解凍したら、(イ)(ロ)のファイルをExcelを起動させて、[名前を付けて保存]で、

    アドイン・ファイルとして保存してほしいのです。 → 以前の(5)の作業です。

    つまり、”xlsファイル → xlaファイル”に変換する練習です。

        トライしてみてください ・ ・ ・ ・

    (ハ)は、(ロ)がアドインとして登録できた後に、開いてください。マクロは入っていません。

 

   では、より良いアドイン・ライフをエンジョイしてください!!


・トップ・メニューへ戻る

・ソルバーを使って"ツルカメ算"の解を求める

・ソルバーを使って"食塩水の濃度問題"の解を求める

・ソルバーを使って"自動勤務表"を作成する

・ExcelVBAで特定セルを画像(jpeg・gif)ファイルに変換する

・Webで円グラフを作成する

・Webでレーダグラフを作成する

・ExcelVBAで自動勤務表を作成する


このページに関するご意見がございましたら、こちらまで連絡下さい。


    






[PR]三井住友海上きらめき生命:医療保険のご案内と資料請求はこちらから