• ベストアンサー

ExcelからAccessデータを検索するマクロ

ExcelのA1セルにある値をAccessのデータベース (ファイル名:abc.mdb、テーブル名:Tbl_a)の フィールド1から検索し、対応するレコードの フィールド2の値をExcelのB1セルに書き込む というマクロはどのように書けばよいのでしょうか? Excel, Accessともに2000です。 よろしくご教授お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.1

Accessの[フィールド1]が、テキスト型フィールドの場合、次のコードで できると思います。 下記コードを設定する前にVBEのメニューから[ツール]-->[参照設定]で 「Microsoft DAO 3.6 Object Library」 にチェックを入れます。 Sub Macro1() Dim db As DAO.Database Dim rs As DAO.Recordset Set db = OpenDatabase("c:\abc.mdb") Set rs = db.OpenRecordset("tbl_a", dbOpenDynaset) rs.FindFirst "[フィールド1]='" & Range("A1").Value & "'" If rs.NoMatch Then   Range("B1").Value = "" Else   Range("B1").Value = rs![フィールド2] End If rs.Close Set rs = Nothing Set db = Nothing End Sub

akey
質問者

お礼

早速のご回答ありがとうございます。 教えていただいた通りの方法で目的を達成することができました。

関連するQ&A