ODBC接続のDSN設定を外部ファイル化する方法
オラクルが11gになったとたんODBCの名前が変わっちゃった><
そんな訳でDSNは外部ファイルで管理した方がよさそうだ
こんな記述を
With ActiveSheet.QueryTables.Add(Connection:= _ "ODBC;DRIVER={Oracle ODBC Driver};UID=user;PWD=pass;DBQ=database;ASY=OFF;", Destination:=Range("A1")) .Sql = "select hoge from fuga" ・・・ End With
こう変える
With ActiveSheet.QueryTables.Add(Connection:= _ "ODBC;FILEDSN=c:\odbc\fuga.dsn;", Destination:=Range("A1")) .Sql = "select hoge from fuga" ・・・ End With
dsnファイルはこんな感じ
[ODBC] DRIVER={Oracle ODBC Driver} UID=user PWD=pass DBQ=database ASY=OFF