プロが教える店舗&オフィスのセキュリティ対策術

AccessのMDBファイルをExcelのListboxに読み込みたいのですが、方法がわかりません。
要はExcelのVB上の変数に、MDBファイルのデータが読み込めれば良いのですが・・・
どなたか分かる方いらっしゃいませんか?

A 回答 (1件)

アクセスのデータを取りこむには、もちろん接続が必要となります。


環境と接続法式が記載されていませんので、DAO接続でのサンプルを作りました。
個人的にはADO接続がいいと思っておりますが、接続文字が環境により不定なため、使用しませんでした。
DAOを使用するためには、VBAの編集画面にて[ツール][参照設定]にて
Microsoft Office x.x Object Library (x.x 部分はできるだけ数字が大きいものを使用してください。)
を指定する必要があります。

質問の内容からすると、Accessデータを読み込めたらOKだと思って、リストボックスへの代入部分は作成しておりません。
プログラム中の「PRINT DATA」となってるコメント部分を、適当に変更してください。


開発環境:EXCEL97

Option Explicit

Sub Main()
  '定数
  Const DB_FILE  As String = "c:\test.mdb"
  Const TBL_NAME As String = "テーブル1"
  
  'DB操作変数
  Dim acDB    As Database
  Dim acRs    As Recordset
  Dim strSQL   As String
  
  'ワーク変数
  Dim intFldCnt  As Integer
  Dim i      As Integer
  
  
  'DB/RECORD OPEN
  Set acDB = OpenDatabase(DB_FILE)
  strSQL = "select * from " & TBL_NAME
  Set acRs = acDB.OpenRecordset(strSQL)
  
  
  'PRINT DATA
  intFldCnt = acRs.Fields.Count
  Do Until acRs.EOF
    For i = 0 To intFldCnt - 1
      Debug.Print acRs(i).Value,
    Next i
    Debug.Print
    acRs.MoveNext
  Loop
  
PGMEND:
  'ALL CLOSE/FREE
  acRs.Clone
  acDB.Close
  Set acRs = Nothing
  Set acDB = Nothing
End Sub
    • good
    • 0
この回答へのお礼

ありがとうございました。
実は昨日解決できました。申し訳ありません。

お礼日時:2002/01/07 19:12

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!