- ベストアンサー
VBからACCESS
VBからACCESSをオープンしようとした時 メソッドまたはデータメンバが見つかりません。 というエラーが出ます。 参照設定で参照するモジュールを教えて下さい。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
#3です 放っらかしにしてて申し訳ありません 私も以下の環境で試してみました OS:WindowsXp Office2003 ExcelVBAで以下の様に記載したら出来ました (VBエッディタのツールの参照設定でMicrosoft Dao 3.60 Libraryのみ設定しました) 特に問題なかったのでパス指定がフルパスに成ってないのが原因では無いですかね? Sub aaa() Dim db1 As DAO.Database Dim rst1 As DAO.Recordset Dim strDBpath As String Dim strSql As String strDBpath = "C:\yamada\yamada.mdb" Set db1 = OpenDatabase(strDBpath) strSql = "select A.* from A;" Set rst1 = db1.OpenRecordset(strSql) rst1.Close End Sub
その他の回答 (5)
- minami99999
- ベストアンサー率50% (4/8)
DAOを使う場合ならNo.5の方の説明のように Microsoft DAO 3.x Object Library を参照しないといけないですね。 Accessのアプリケーションを操作するなら Microsoft Access XXX Object Library を使いますけど。 補足説明されているエラーメッセージから想像すると 「”xxxナンバー.mdb”が見つかりません」 っていうのは単純にファイルが見つかっていないとか・・・ フルパスで”D:\○○○\xxxナンバー.mdb" と指定すべきじゃないでしょうか?
- Wendy02
- ベストアンサー率57% (3570/6232)
#3 のレス-EXCEL2000のVBAです。 Access ですよね。 #1 さんの #Microsoft Access XXX Object Library #(XXXにはバージョンが入ります) 私は、Access のオブジェクトライブラリを使ったことがないですね。知りませんでした。通常、Access は、ADOですが、内容からすると、DAO のように見えるけれども。(^^; 例: Dim ××× As DAO.Database Dim ○○○ As DAO.Recordset 参照設定:Microsoft DAO 3.x Object Library または、それぞれに、Database と Recordset を置く 何か、私自身がすごくトンチンカンな回答をしているような気がしてきます。
- sckt
- ベストアンサー率42% (3/7)
#1です。 変数の宣言がPublicになってないとか? F8押しつつ#3のどこの行でエラーになっているかがわかると、 もっと具体的に考えられると思うのですが・・・ お願いします。
- konchikisho
- ベストアンサー率22% (2/9)
VBのバージョンは何ですか? ソースコード等の記載がないと、回答し辛いかも・・(汗)。 参照しているオブジェクトがなんなのか検討つきません・・・。 えらそうな事言って置いて私、VB6までしか判らないので、その先助言できるかどうか判らないですが、 細かい部分まで記載した方がクリティカルな回答もらえると思いますよ。 追伸 おせっかいだけで、すみません。
補足
EXCEL2000のVBAです。 Set xxxナンバー = OpenDatabase("xxxナンバー.mdb") Set データ = xxxナンバー.OpenRecordset("データ", dbOpenTable) Do Until データ.EOF データ.Delete データ.MoveNext Loop For IDX3 = 0 To 件数 データ.AddNew データ.通番 = Val(開始ナンバー) + IDX3 データ.xxx = お問い合せ番号(IDX3) データ.郵政 = 郵政CD(IDX3) データ.Update Next IDX3 データ.Close xxxナンバー.Close Unload Me Unload aaaナンバー作成メニュー End Sub
- sckt
- ベストアンサー率42% (3/7)
Microsoft Access XXX Object Library (XXXにはバージョンが入ります) にチェックを入れてみてください。
補足
それは参照可能なライブラリファイルでですよね? チエックは入れてるんですけど。 他に原因は考えられないでしょうか?
補足
Set xxxナンバー = OpenDatabase("xxxナンバー.mdb") の所で”xxxナンバー.mdb”が見つかりません というエラーです。 すいません・・・。