• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel VBA について教えて下さい)

Excel VBAでAccess接続する方法

このQ&Aのポイント
  • Excel VBAでAccessに接続する方法について教えてください。
  • Excel VBAのADODB.Connectionを使ってAccessに接続する方法を教えてください。
  • Excel VBAで別のプロシージャからもAccessに接続するためには、どのように設定すれば良いですか。

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

  • ベストアンサー
  • sora1515
  • ベストアンサー率58% (54/92)
回答No.3

回答1の補足です。 その場合は メニューの挿入→標準モジュール で標準モジュールに以下を書きます。 Option Explicit Public cn As Object すると他のシートや追加モジュールからも使えます。 シートモジュールに上記を書いても他のモジュールでは使えないですね。

neko-007
質問者

お礼

ありがとうございます 助かりました

その他の回答 (2)

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

単に、何度も Set cn = CreateObject("ADODB.Connection") を記述する必要を簡略化したいということですよね 同じモジュールでまとめてあるとします。 Option Explicit Dim cn As New ADODB.Connection Const CONNECT1 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" Const CONNECT2 = "aaa.mdb;" Const CONNECT3 = "bbb.mdb;" Sub aaa() cn.Open CONNECT1 & CONNECT2 ・・・・ End Sub Sub bbb() cn.Open CONNECT1 & CONNECT3 ・・・・ End Sub 動作までは確認していません。 Option Explicitで検索してみてください。

neko-007
質問者

お礼

ありがとうございます

  • sora1515
  • ベストアンサー率58% (54/92)
回答No.1

これでいかがでしょう。 Option Explicit Dim cn As Object Sub aaa() Set cn = CreateObject("ADODB.Connection") End Sub Sub bbb() cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=aaa.mdb;" End Sub

neko-007
質問者

補足

ありがとうございます 同一モジュール内の関数aaa(),bbb() で可能でした さらに教えてもらえるのなら 関数aaa(),bbb()が別モジュールにある場合でも cn を共通に使える方法をお教えください

関連するQ&A