postgresSQLとODBC接続する(VBA)


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

  • ドライバのダウンロード

http://www.postgresql.org/ftp/odbc/versions/msi/
http://ftp.postgresql.org/pub/odbc/versions/msi/psqlodbc_09_03_0300-x64.zip

解凍したpsqlodbc_x64.msiを実行してインストール

  • ODBC登録

コントロールパネル→管理ツール→データソース(ODBC)を選択

32bit版を登録したい場合は、%windir%\SysWOW64\odbcad32.exeを使うこと!
64BitOSに32Bitオフィスをインストールした場合は、32BitのODBCドライバをインストールする必要があり、
コントロールパネルからたどると64Bit用のODBC設定しか起動しない。。。
(64Bit版ODBCは%windir%\System32\odbcad32.exeが実体)

ユーザーDSNで追加ボタンをクリック
「PostgreSQL Unicode」を選択して完了ボタンをクリック
データソース名:PostgreSQL32b
SSL Mode:優先 ←商用環境は「必須」?
サーバ名:localhost
データベース名:*****
Port:5432
ユーザ名:****
パスワード:****

テストボタンをクリックして、「Connection successful」が出れば「保存」ボタンをクリックして終了する

  • excelから接続

マクロで参照設定をクリックして、ライブラリを登録する
   Microsoft ActiveX Data Objects 6.1 Library

excel上でvisual basic editorを起動して、ボタンを追加して、ボタンのイベントを記述する
   Dim adoCon As New ADODB.Connection
   adoCon.Open "DSN=PostgreSQL32b;"    ' データソースで指定した名前
   Dim adoRS As ADODB.Recordset
   Set adoRS = adoCon.Execute("SELECT * FROM userinfo")
   Label2.Caption = adoRS("name")
   Label3.Caption = adoRS("age")
   adoRS.Close
   adoCon.Close
   Set adoRS = Nothing
   Set adoCon = Nothing