はじめてお世話になります。
Accessで困ったことがあり、こちらを訪ねました。
VBAにて、クエリーの自動実行をやらせようと思い、 db.Execute (DB名) を与えたところ、そのクエリーの中にODBC接続のリンクテーブルが含まれていました。
その為、クエリーの自動実行をやらせようとしても、ODBC接続のリンクテーブル側でのログオン認証を求められてしまい、“自動で”進めることができません。
このような、Accessのクエリー中に「別のデータベースが存在」し、この「別のデータベースに対してもログオンしたい」場合、どのような手段が適切なのでしょうか。
~~~~プログラム抜粋~~~~
Dim dbCn As New ADODB.Connection
Dim dbPath As String
Dim hanteiTBL As String
Dim Target As String
Dim UserID As String
Dim UserPass As String
'--DATA MANGMENT DBに接続--------------------------------------------------------
dbPath = "Provider=MSDAORA; Data Source=dmdb; User ID=" & UserID & "; Password=" & UserPass & ";"
dbCn.Open dbPath '外部データサーバに接続する。1秒ほどで成立。
'--[Table作成] & [既存テーブル削除]---------------------------------------------
hanteiTBL = "T_ABC"
If ExistTable(hanteiTBL) Then
DoCmd.DeleteObject acTable, hanteiTBL
MessageBox "元テーブル残留分を削除しました。"
End If
target = "EQ_1" 'Access上で実行用クエリーとして組んでいる。
CurrentDb.Execute target 'Accessが持つ実行クエリーを実施。この中にODBCサーバに接続されているテーブルがある為、そのテーブル制御に対してサーバのログオンを求められてしまう。
~~~~プログラム抜粋~~~~
ご教示いただける際に、さらに前後が必要な場合はご指摘いただけると助かります。
よろしくお願いいたします。