Windows TIPS
[Office Master]
  Windows TIPS TOPへ
Windows TIPS全リストへ

Excelでユーザー定義関数をエクスポート/インポートする

解説をスキップして操作方法を読む

山田 祥寛
2004/08/28
 
対象ソフトウェア
Excel 2000
Excel 2002
Excel 2003
Excelで標準モジュールを含むブックをテンプレート化すれば、自前のワークシート関数(ユーザー定義関数)をすべてのブックで共有することができる。
しかしユーザー定義関数の数が多くなってくると、必ずしもすべてのブックですべてのユーザー定義関数を有効にしたくないケースが出てくる。
標準モジュールのエクスポート/インポート機能を利用することで、ユーザー定義関数をブック単位で有効にすることができる。
 
解説

 Windows TIPS「Excelでユーザー定義のワークシート関数を追加する」では、標準モジュールを利用することで自前のワークシート関数を追加する方法について紹介した。標準モジュールを含むブックは、テンプレート(「.xlt」ファイル)として登録することで、複数のブック間で共有することができる。しかしユーザー定義関数の数が多くなってきた場合、必ずしもすべてのユーザー定義関数を有効にしたくないというケースも出てくるだろう。必要な関数だけを有効化しておいた方が、関数を選択する場合にも分かりやすく便利だ。

 そこで本稿では、作成した標準モジュール(ユーザー定義関数)をモジュール・ファイル(「.bas」ファイル)としてエクスポートし、必要に応じて、個々のブックにインポートする方法について紹介する。再利用が可能な単位であらかじめモジュール・ファイル(関数群)を作成しておけば、必要なブックで必要なユーザー定義関数のみを有効化することができる。

 それではさっそく、一連の手順を見てみることにしよう。なお、エクスポート/インポートの対象となるサンプル・コードは、先のWindows TIPSで紹介したSubStringAfter関数をそのまま利用するので、詳しくはそちらのTIPSを参照していただきたい。


操作方法

手順1―標準モジュールをエクスポートする

 SubStringAfter関数を定義した標準モジュールを含むブック(テンプレート)を呼び出し、メニュー・バーの[ツール]−[マクロ]−[Visual Basic Editor]を選択する。[MVisual Basic Editor]ウィンドウが開くので、プロジェクト・エクスプローラ内のツリーから[標準モジュール]−[winTips]を右クリックする(「winTips」は先のWindows TIPSで指定したモジュール名)。表示されたコンテキスト・メニューから[ファイルのエクスポート]を選択する。

標準モジュールのエクスポート
プロジェクト・エクスプローラから行うことができる。もしもプロジェクト・エクスプローラが表示されていない場合には、メニュー・バーの[表示]−[プロジェクト エクスプローラ]を選択する。
  これを選択してエクスポートする。

 [ファイルのエクスポート]ダイアログが開くので、標準モジュール(「.bas」ファイル)を保存したい任意のフォルダを選択し、[保存]ボタンをクリックする。

手順2―「.bas」ファイルを任意のブックにインポートする

 次に、エクスポートした「.bas」ファイルを、利用したいブックにインポートしよう。まずは手順1と同様に、利用側のブックから「Visual Basic Editor」を開く。プロジェクト・エクスプローラ上のツリーから[VBAProject(ファイル名)]を右クリックし、表示されたコンテキスト・メニューから[ファイルのインポート]を選択してほしい。

標準モジュールのインポート
プロジェクト・エクスプローラでプロジェクト名を右クリックし、[ファイルのインポート]を選択する。
  これを選択して、エクスポートしたファイルをインポートする。

 [ファイルのインポート]ダイアログが開くので、手順1で作成した「.bas」ファイルを選択し、[開く]ボタンをクリックする。これで、プロジェクト・エクスプローラのツリーにもインポートしたモジュールが追加されたはずだ。

 なお、もしも同じ名前のモジュールをインポートしようとした場合にも、自動的に連番が付加されて、エラーにはならないので注意すること。

 以上で、インポート作業は完了だ。先のWindows TIPSの手順3に従って、ユーザー定義関数の挙動を確認しておこう。End of Article

  • サンプル・ファイルmyAddin.xlawinTips.basのダウンロード
    :今回のサンプル・ファイルをダウンロードするには、上のリンクを右クリックして、それぞれmyAddin.xlaとwinTips.basというファイル名で保存すること)

関連記事
  Windows TIPS:Excelでユーザー定義のワークシート関数を追加する(Windows Server Insider)
     
「Windows TIPS」


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間