レポートがほとんど存在しない MSAccess2003 DB があります (レポートは VB 6.0 コードにあります)。2007 のオプションを使用して 2003 から 2007 に移行しました。バージョン(リポジトリ)で、2003年に参照されたコンポーネントへの参照を追加すると、「名前が既存のモジュール、プロジェクト、またはオブジェクトライブラリと競合しています」などのエラーが発生します。誰でもこれを解決するのを手伝ってもらえますか
1 に答える
このエラーを解決する以下のリンクを確認してください
http://kalidadiz.wordpress.com/2010/07/16/access-2007-recordset2/
編集:リンク内の情報...
しかし、コンパイルしようとすると、このコンパイルエラーメッセージが表示されたときに、今作成した宣言が強調表示されます。
ユーザー定義タイプが定義されていません
結局のところ、Recordset2オブジェクトには、Microsoft Office 12.0 AccessDatabaseEngineオブジェクトライブラリという名前のオブジェクトライブラリのサポートが必要でした。私はすぐに解決策を見つけたと思って、すぐに先に進み、VBAエディター内のツール-参照を介してこのライブラリを追加しました...そしてこのエラーが表示されました:
名前が既存のモジュール、プロジェクト、またはオブジェクトライブラリと競合しています
結局、解決するのはそれほど速くなかったと思います!私がしなければならなかった次のステップは、この2番目のエラーを取り除く方法を見つけ出すことでした。そして、インターネットがもう一度救いの手を差し伸べます!結局のところ、競合は、すでに参照セクションにある既存のライブラリと関係がありました。競合するライブラリは次のとおりです。MicrosoftDAO3.6オブジェクトライブラリMicrosoftOffice12.0 Accessデータベースエンジンオブジェクトライブラリ最初のライブラリは参照にすでに存在するライブラリであり、2番目のライブラリを追加できないようです。したがって、競合が発生します。これについての説明をオンラインで見つけました。MicrosoftDAO3.6オブジェクトライブラリは、.mdb形式で作業する場合にのみ役立ちます。これは、新しい.accdb形式でも機能しますが、Microsoft Office12.0Accessデータベースエンジンを選択することをお勧めします。オブジェクトライブラリ、これは、Microsoft DAO 3.6 Object Libraryが行うすべてのことを処理し、新しい2007バージョンのサポートを提供します。この説明を武器に、リファレンスからMicrosoft DAO 3.6オブジェクトライブラリを削除してから、Microsoft Office 12.0 Accessデータベースエンジンオブジェクトライブラリを追加しました…問題は解決しました!