現象
ADO プロジェクトをコンパイルすると、次のエラーが表示されます。
コンパイルエラー: ユーザー定義型が定義されていません
これは、接続またはコマンドオブジェクトのいずれかで発生する可能性があります。
原因
Microsoft ActiveX データオブジェクト (ADODB) タイプライブラリではなく、次のいずれかのライブラリを参照している可能性があります。
-
Microsoft ActiveX データオブジェクトレコードセット (ADOR) タイプライブラリ
-
Microsoft ActiveX データオブジェクト (多次元) (ADOMD) タイプライブラリ。
解決方法
プロジェクトから間違ったタイプライブラリ参照を削除し、適切なタイプライブラリへの参照を追加します。
状態
この動作は仕様です。
詳細情報
現象の再現手順
-
新しいプロジェクトを作成し、コマンドボタン (Command1) をフォームに追加します。
-
Microsoft ActiveX データオブジェクトのレコードセットライブラリへの参照を追加します。
-
フォームに次のコードを追加します。
Private Sub Command1_Click() Dim cn As ADODB.Connection End Sub
-
プロジェクトを実行し、コマンドボタンをクリックします。 エラーが表示されます。
-
参照を削除し、Microsoft ActiveX データオブジェクトライブラリへの参照を追加します。
-
コマンドボタンをクリックします。 エラーは表示されません。
注:
-
Microsoft Access ユーザーは、ADODB を使用する必要があります。接続して、DAO 接続オブジェクトと混同しないようにします。
-
Intellitype 機能がオンになっている場合は、ADOR type library での有効なオブジェクトとしての接続が表示されませんが、ADODB タイプライブラリを使っていることに注意してください。 これは、正しいタイプライブラリを参照していないことを示しています。
-
このエラーは、参照されていない他のタイプライブラリ内のオブジェクトを参照している場合にも発生する可能性があります。