[OFF2003] データベースに失われた参照があると VBA 関数が中断する

文書翻訳 文書翻訳
文書番号: 283806 - 対象製品
この記事は、以前は次の ID で公開されていました: JP283806
スモール ビジネスのお客様の場合は、追加のトラブルシューティング ラーニング リソースを探し、 スモール ビジネス向けのサポート サイトです。
難易度 : 中。基本的なマクロ、コーディング、相互運用性に関する知識が必要です。

この資料は Microsoft Access データベース (.mdb)、および Microsoft Access プロジェクト (.adp) について記述したものです。

Microsoft Access 2000 については、次の資料を参照してください。 208218
Microsoft Access 97 については、次の資料を参照してください。 160870
すべて展開する | すべて折りたたむ

目次

現象

プロシージャに Visual Basic for Applications (VBA) の関数が含まれ、かつ存在しないオブジェクト ライブラリまたはタイプ ライブラリへの参照がデータベースに含まれている場合、モジュールのコンパイル時またはプロシージャの実行時に、次のエラー メッセージのいずれかが表示される場合があります。

エラー メッセージ 1

データベースまたはプロジェクトに、ファイル <filename> を参照する切断された参照が含まれています。

* データベースまたはプロジェクトが正しいかどうか確認し、この参照を修復してください。

*この参照を修復する方法について知りたい場合は、[ヘルプ] をクリックします。

エラー メッセージ 2

コンパイル エラー :
プロジェクトまたはライブラリが見つかりません。

原因

[参照設定] ダイアログ ボックスで "参照不可 : <referencename>" と表示されるデータベース、タイプ ライブラリ、またはオブジェクト ライブラリへの参照が、データベースに含まれています。

解決方法

失われた参照を削除するには、以下の手順を実行します。
  1. データベースを開きます。
  2. Alt + F11 キーを押して Visual Basic Editor を開きます。
  3. [ツール] メニューの [参照設定] をクリックします。
  4. "参照不可 : <referencename>" と表示されているタイプ ライブラリまたはオブジェクト ライブラリのチェック ボックスをオフにします。
また [参照設定] ダイアログ ボックスで指定されているパスへの参照ファイルを復元することでも回避できます。参照ファイルが別の場所にある場合は、"参照不可 : <referencename>" と表示される参照を消去し、別のフォルダにある参照ファイルへの参照を新規に作成します。

: Access のランタイム アプリケーションでは、メニューから参照を表示することはできません。ただし、次の資料に、コードを使用して参照を表示する方法が記載されています。
209849 ループ処理で参照のプロパティを表示する方法

詳細

問題の再現手順

  1. サンプル データベース Northwind.mdb を開きます。
  2. テーブルまたはクエリに基づかないフォームを新しく作成します。
  3. [挿入] メニューの [ActiveX コントロール] をクリックします。
  4. [ActiveX コントロールの選択] ボックスの一覧の [Kodak Image Edit Control] をクリックし、[OK] をクリックします。
  5. フォームを frmReference という名前で保存して、閉じます。
  6. Northwind.mdb を閉じ、Access を終了します。
  7. ImgEdit.ocx ファイルを検索して、ファイル名を ImgEdit.old に変更します。
  8. Access を起動して Northwind.mdb を開きます。
  9. デザイン ビューで、"スタートアップ" モジュールを開きます。
  10. [デバッグ] メニューの [Northwind のコンパイル] をクリックします。この資料の「現象」で説明したエラー メッセージが表示されます。
  11. [OK] をクリックします。[参照設定] ダイアログ ボックスが表示され、次の参照が [参照可能なライブラリ ファイル] ボックスの一覧で強調表示されます。
    参照不可: Kodak Image Edit Control
    					
  12. [参照設定] ダイアログ ボックスの [キャンセル] をクリックします。
  13. ImgEdit.old ファイルを検索して、ファイル名を ImgEdit.ocx に変更します。
  14. 手順 10. を再度実行し、エラー メッセージが表示されないことを確認します。

関連情報

最初のエラー メッセージの原因となる別の問題の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
275110 [ACC2002] 関数を参照するクエリを開くと "Undefined Function in Expression" というエラー メッセージが表示される

関連情報

この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 283806 (最終更新日 2004-06-07) を基に作成したものです。

この資料に含まれているサンプル コード/プログラムは英語版を前提に書かれたものをありのままに記述しており、日本語環境での動作は確認されておりません。

プロパティ

文書番号: 283806 - 最終更新日: 2013年7月16日 - リビジョン: 6.2
この資料は以下の製品について記述したものです。
  • Microsoft Office Access 2003
  • Microsoft Access 2002 Standard Edition
  • Microsoft Excel 2002 Standard Edition
  • Microsoft Word 2002
キーワード:?
kbproductlink kbfunctions kbvba kberrmsg kbprb KB283806
Microsoft Knowledge Base の免責: Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com