ODBCの自動設定
※ここを参考にした。
SQLConfigDataSource を使用して Access のシステム DSN を作成する方法
http://support.microsoft.com/kb/287668/ja
・AcceccVBAで作成
ODBC接続したいAccessに入れおいて、自分自身を登録・削除する。
Build_SystemDSNファンクションを、登録区分、DSN名、データベースパスの引数で呼び出す。
Accessの自分のパスは、CurrentProject.FullName で得る。(Access2000以降)
※ここを参考にした。
SQLConfigDataSource を使用して Access のシステム DSN を作成する方法
http://support.microsoft.com/kb/287668/ja
・AcceccVBAで作成
ODBC接続したいAccessに入れおいて、自分自身を登録・削除する。
Build_SystemDSNファンクションを、登録区分、DSN名、データベースパスの引数で呼び出す。
Accessの自分のパスは、CurrentProject.FullName で得る。(Access2000以降)
<VBA> Option Explicit 'ユーザDSN 'Const ODBC_ADD_DSN = 1 ' Add a new data source. 'Const ODBC_CONFIG_DSN = 2 ' Configure (edit) existing data source. 'Const ODBC_REMOVE_DSN = 3 ' Remove existing data source. 'システムDSN 'Const ODBC_ADD_SYS_DSN = 4 'Add data source 'Const ODBC_CONFIG_SYS_DSN = 5 'Configure (edit) data source 'Const ODBC_REMOVE_SYS_DSN = 6 'Remove data source Private Declare Function SQLConfigDataSource Lib "ODBCCP32.DLL" (ByVal _ hwndParent As Long, ByVal fRequest As Long, ByVal _ lpszDriver As String, ByVal lpszAttributes As String) As Long Function Build_SystemDSN(KBN As Integer, DSN_NAME As String, Db_Path As String) If KBN <> 4 And KBN <> 6 Then MsgBox ("区分エラー 4 or 6 ") Exit Function End If Dim ret As Long Dim Driver As String Dim Attributes As String Driver = "Microsoft Access Driver (*.MDB)" & Chr(0) Attributes = "DSN=" & DSN_NAME & Chr(0) Attributes = Attributes & "Uid=Admin" & Chr(0) & "pwd=" & Chr(0) Attributes = Attributes & "DBQ=" & Db_Path & Chr(0) ret = SQLConfigDataSource(0, KBN, Driver, Attributes) 'ret が 1 の時は成功、0 の時は失敗 If ret <> 1 Then MsgBox "DSN 保守エラー" End If End Function
※コメント投稿者のブログIDはブログ作成者のみに通知されます