Sqliteに接続@Excel マクロ・VBA

ExcelからSqliteに接続します。

1.Sqliteのインストール、DBの作成

Sqliteをダウンロードします。
http://www.sqlite.org/download.htmlから入手できます。
ファイルをダウンロードしたら、解凍します。
"sqlite3.exe"ファイルが入手できます。

コマンドプロンプトを立ち上げ、DBを作成します。
sqlite3.exe test.dbを打ちます。
"test.db"は、DBのファイル名です。

テーブルを作成して、値を挿入します。
create table user(id text,name text);
insert into user values('1','名前');

2.ODBドライバの入手

http://www.ch-werner.de/sqliteodbc/から入手できます。
入手したら、インストールします。

3.VBAのソース

ADODBを用いて、Sqliteに接続します。
ADODB.Connectionを生成して、接続文字列を設定します。
Sqliteに接続し、SQL文を発行します。
結果をRecordsetにて取得します。




Sub test()

Dim con As ADODB.Connection
Dim rs As ADODB.Recordset

'Connection生成と接続文字列の設定
Set con = New ADODB.Connection
con.ConnectionString = "DRIVER=SQLite3 ODBC Driver;Database=C:\test.db"

'sqliteに接続
con.Open

'select文発行
Set rs = con.Execute("SELECT id,name FROM user;")


'結果をセルに書き込む
rs.MoveFirst
i = 1
Do Until rs.EOF = True
    Cells(i, 1).Value = rs.Fields(0).Value
    Cells(i, 2).Value = rs.Fields(1).Value
    rs.MoveNext
    i = i + 1
Loop

'接続を閉じる
con.Close
Set con = Nothing


End Sub




Copyright (C) Excelマクロ・VBAのお勉強. All Rights Reserved.