ADO接続(VB・ACCESS)時のエラーについて

解決


VOLVIC  2005-10-03 14:57:44  No: 125946  IP: [192.*.*.*]

はじめまして。VOLVICです。
VB6.0 + Access2000(ADO接続)の環境で開発を行なっています。

以下のソースでAccessに接続しようとすると、

『実行時エラー '91':
オブジェクト変数またはEithブロック変数が設定されていません。』

のエラーが出てしまいます。

エラーの出先は、以下のソース内で<ERROR>〜</ERROR>で発生しています。
指定するパスに"sample.mdb"はちゃんと存在しています。
どこが悪いのでしょうか。

※過去ログで『ADOでAccessに接続するには?』という質問がありましたので
  そちらの回答内容を参考にソースを組みました。
  http://madia.world.coocan.jp/vb/vb_bbs2/200211_02110021.html

ご教授お願い致します。

----- VB SOURCE -----
Function getConstData()
    Dim db As ADODB.Connection
    Dim rs As ADODB.Recordset
    Dim strTable As String
    
    strTable = "T_地域マスタ"
'--<ERROR>--
    db.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
            "Data Source=E:\work\sample.mdb;"
'--</ERROR>
    rs.Open strTable, db, adOpenKeyset, adLockOptimistic
End Function

編集 削除
GOD  2005-10-03 15:21:35  No: 125947  IP: [192.*.*.*]

インスタンスが生成されていないようですが。

編集 削除
特攻隊長まるるう  2005-10-03 15:32:32  No: 125948  IP: [192.*.*.*]

Connection オブジェクトの実体(インスタンス)を生成するためには
'--<ERROR>--
   Set db = New ADODB.Connection
   db.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
のコードが必要です。

編集 削除
VOLVIC  2005-10-03 15:35:43  No: 125949  IP: [192.*.*.*]

GODさん、レスありがとうございます。

>インスタンスが生成されていないようですが。

Set db = New ADODB.Connection
Set rs = New ADODB.Recordset
を追記したことで、解決しました。

基本的なミスで申し訳ありませんでした。

編集 削除
VOLVIC  2005-10-03 15:37:02  No: 125950  IP: [192.*.*.*]

特攻隊長まるるう さん、レスありがとうございます。
基本的なミスで申し訳ありませんでした。

編集 削除