Microsoft Accessデータベースで共通処理のライブラリを作成し、アプリケーションデータベースから参照設定で使用することがあります。
共通処理側のライブラリ内でモジュール分けを行い、他のモジュールで参照したい場合はPublic属性を付けて定数や関数等を定義します。
''' ''' <summary> ''' エラートラップ用のユーザーエラー番号を取得します。 ''' </summary> ''' <param name="error">エラー番号を<see cref="Long"/>で指定します。</param> ''' <returns>ユーザーエラー番号を<see cref="Long"/>で返します。</returns> ''' Public Function GetUserErrorNo(error As Long) GetUserErrorNo = vbObjectError + error End Function
このままですと、Public属性が付いているためアプリケーションデータベース側でも参照(実行)できてしまいます。
アプリケーションデータベース側で参照させないようにするためには、Public属性を付けて定数や関数等を定義しているモジュールにOption Private Moduleを付けます。
Option Private Module : Public Function GetUserErrorNo(error As Long) : End Function
これで、アプリケーションデータベース側では、GetUserErrorNoが参照(実行)できなくなります。