Visual Basic for Applications (VBA) 関数は、参照が見つからないデータベースで分割されます
元の KB 番号: 283806
注:
基本的なマクロ、コーディング、相互運用性のスキルが必要です。 この記事は、Microsoft Access データベース (.mdb と .accdb) と Microsoft Access プロジェクト (.adp) に適用されます。
現象
Visual Basic for Applications関数を含むプロシージャがあり、データベースに不足しているオブジェクト ライブラリまたはタイプ ライブラリへの参照が含まれている場合は、モジュールをコンパイルするとき、またはプロシージャを実行するときに次のいずれかのエラー メッセージが表示されることがあります。
エラー メッセージ 1
Microsoft Access データベースまたはプロジェクトには、ファイル <ファイル名>への参照が見つからないか壊れています。
* データベースまたはプロジェクトが正しく動作するようにするには、この参照を修正する必要があります。
* このリファレンスを修正する方法については、[ヘルプ] をクリックしてください。
エラー メッセージ 2
コンパイル エラー:
プロジェクトまたはライブラリが見つかりません
原因
データベースには、データベース、タイプ ライブラリ、またはオブジェクト ライブラリへの参照が含まれています。このライブラリは、[参照] ダイアログ ボックスの [MISSING: referencename]\(参照名>\) < としてマークされています。
解決方法
不足している参照を削除するには、次の手順に従います。
- データベースを開きます。
- Alt キーを押しながら F11 キーを押して、Visual Basic Editor を開きます。
- [ツール] メニューの [参照設定] をクリックします。
- [MISSING: <referencename>] としてマークされているタイプ ライブラリまたはオブジェクト ライブラリの [チェック] ボックスをオフにします。
参照を削除する代わりに、[参照] ダイアログ ボックスで指定されているパスに参照ファイルを復元します。 参照ファイルが新しい場所にある場合は、 MISSING: <referencename> 参照をクリアし、新しいフォルダー内のファイルへの新しい参照を作成します。
注:
Access ランタイム アプリケーションでは、メニューから参照を表示することはできません。 ただし、次の記事では、コードを使用して参照を表示する方法を示 します。 209849 参照をループしてプロパティを表示する方法
動作の再現手順
サンプル データベース Northwind.mdbを開きます。
テーブルまたはクエリに基づいていない新しいフォームを作成します。
[ 挿入 ] メニューの [ ActiveX コントロール] をクリックします。
[ ActiveX コントロールの選択 ] ボックスの一覧で、[ Kodak Image Edit Control]\(コダック イメージ編集コントロール\) をクリックし、[OK] をクリック します。
フォームを frmReference として保存し、閉じます。
Northwind.mdbを閉じ、Access を終了します。
ImgEdit.ocx ファイルを見つけて、ImgEdit.old に名前を変更します。
Access を起動し、Northwind.mdbを開きます。
デザイン ビューでスタートアップ モジュールを開きます。
[ デバッグ ] メニューの [ 北風のコンパイル] をクリックします。 この記事の「現象」セクションに記載されている両方のエラー メッセージが表示されることに注意してください。
[OK] をクリックします。 [参照] ダイアログ ボックスが表示されることに注意してください。[ 使用可能な 参照] ダイアログ ボックスでは、次の参照が強調表示されています。
MISSING: Kodak Image Edit Control
[使用可能な参照] ダイアログ ボックスで [ キャンセル ] をクリックします。
ImgEdit.old ファイルを見つけて、ImgEdit.ocx に名前を変更します。
手順 10 を繰り返し、エラー メッセージが表示されなくなったことに注意してください。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示