スポンサードリンク

作成した標準モジュールを、他のExcelファイルでも利用するには?

ExcelVBAで、標準モジュールに作成したユーザー定義関数は、そのExcelファイル(Book)内だけで有効です。

したがって、他のExcelファイルで今回のユーザー定義関数を使おうとしても、エラーになります。

新しいExcelファイルを作成して、試してみてください。

↓このようなエラーが表示されるはずです。
excel-vba-19.gif

何故なら、新しいExcelファイルには、ユーザー定義関数がプログラムされていないからです。

このことから、ユーザー定義関数は、Excelファイル(Book)ごとに管理されていることがわかります。

もし新しいExcelファイルでも同じユーザー定義関数を使いたい場合は、以下のような方法があります。

(1)ファイルごとコピーする。
(2)新しいファイルで、新たにユーザー定義関数を作成する。
(3)標準モジュールをインポートする。

一番簡単なのは(1)です。

ユーザー定義関数が含まれているExcelファイルをコピーすると、プログラムもコピーされるので、そのまま使うことができます。

(2)の方法は、手間がかかるので、あまりおすすめできません。

また、既にExcelファイルがあり、データがある程度入力されている場合は、(3)の方法が適しています。

入力済みのデータや計算式が、そのまま使えるからです。

標準モジュールはエクスポートしたり、インポートすることができます。標準モジュールにプログラムを書いておけば、他のファイルで使うことは簡単です。

どの方法が適しているかは、入力済みのデータや計算式を移動したほうが簡単なのか、それともプログラム側をインポートしたほうが簡単なのかで判断してください。

次回は標準モジュールのエクスポートとインポートについて解説します。

スポンサードリンク






Excel VBA 初心者入門講座 TOPへ