VBAで外部のAccessに接続する方法【adoデータベース(DB)接続&接続解除】

2月 2, 2023

※当ブログではリンク先にプロモーションを含みます。

VBAで外部のAccessに接続する方法【データベース接続&接続解除】

VBAで外部AccessのDBに接続する方法がわからない方向けに書いています。

本記事の内容

・ExcelVBAやAccessVBAから外部Accessのデータベースに接続する方法
を紹介します。

会社の業務自動化やデータ分析等でAccessのデータベースからデータを取得することがあると思います。

定期的な業務はVBAで自動的にデータ取得して、業務時間を大幅に短縮ですことが期待できます。

ぜひご活用ください。

 

VBA(マクロ)でAccess(アクセス)に接続&接続解除する方法

1.参照設定

参照設定からADO(ActiveX Data Objects)を使用することでExcelやAccess等のOfficeソフトからAccessに接続することができます。

まず、ADOを使用するための参照設定を設定します。

①Visual Basic Editorを起動する

 
②Visual Basic Editorのメニューバーの「ツール」をクリックした後、「参照設定」をクリックする

 
③参照設定画面が開かれた後、参照可能なライブラリファイルから「Microsoft ActiveX Data Objects X.X Library」にチェックを入れてOKボタンを押す

ADOのバージョンは環境によって異なりますので、環境に合わせて読みかえください。

わからなければ、最新のバージョンを選択して使用してみてください。

 

2.Access(アクセス)への接続

Accessに接続、切断するサンプルプログラムを以下に記載します。

  1. '*****************************************
  2. '* Accessデータベース接続
  3. '*****************************************
  4. Public ADO_CN As ADODB.Connection 'ADOコネクション
  5. Public Sub ADO_CONNECTION()
  6.     Dim ACCESS_FILEPATH As String 'Accessファイルパス
  7.     
  8.     'Accessファイルパス
  9.     ACCESS_FILEPATH = "C:\Users\\開発\Database1.accdb"
  10.     
  11.     'Connectionオブジェクトのインスタンス化
  12.     Set ADO_CN = New ADODB.Connection
  13.     
  14.     
  15.     'Access接続
  16.     ADO_CN.Open "Provider=Microsoft.ACE.OLEDB.12.0;" & _
  17.                 "Data Source=" & ACCESS_FILEPATH & ";"
  18. End Sub
  19. '*****************************************
  20. '* Accessデータベース接続解除
  21. '*****************************************
  22. Public Sub ADO_DISCONNECTION()
  23.     
  24.     '接続解除
  25.     ADO_CN.Close
  26.     Set ADO_CN = Nothing
  27. End Sub

スポンサーリンク

 

まとめ

ExcelVBAやAccessVBAから外部のAccessにデータベース接続する方法を紹介しました。

Accessのデータベースからデータを自動的に取得するプログラムに活用いただけたらと思います。

業務効率化等に必ず役に立つはずです。

最後までありがとうございました。

 

【VBA】Accessデータベースを自動的にファイル圧縮(最適化/修復)する方法
VBAからOracle Databaseに接続する方法
VBAでSQL Serverに接続する方法
も紹介していますので、もしよろしければ御覧ください。

 

¥1,604 (2024/02/27 05:40時点 | Amazon調べ)
Microsoft Public Affiliate Program (JP)(マイクロソフトアフィリエイトプログラム)