
VBAから
 ・SQLiteへSELECT文を実行
できます!
前提
・SQLiteがインストールされていること。
・SQLite ODBC Driverがインストールされていること。
VBAコード
ここでは例として、
 ・デスクトップ上のSQLiteファイル「sampleDB.db」の
 ・テーブル「employee」へSELECT文を実行して
 ・取得したデータをメッセージ出力
します。
※今回は3レコード分のみ取得します。

Option Explicit
Sub sample()
    
    Dim ws As Worksheet
    Dim dbName As String
    Dim conStr As String
    Dim sql As String
    Dim con As Object
    Dim rs As Object
    Dim recordStr As String
    Dim i As Double
    
    'シート
    Set ws = Worksheets("sample")
    'DB名(SQLiteのファイル名)
    dbName = "C:\Users\user\Desktop\sampleDB.db"
    '接続文字列
    conStr = "DRIVER=SQLite3 ODBC Driver;Database=" & dbName
    'SELECT文
    sql = "SELECT id,name,sex,section FROM employee LIMIT 3"
    'DB接続
    Set con = CreateObject("ADODB.Connection")
    con.Open conStr
    
    'SELECT文を実行
    Set rs = con.Execute(sql)
        
    '取得したレコード分繰り返し
    Do Until rs.EOF
        ' 取得した1レコードをカンマ区切りでString型の変数に設定
        recordStr = rs.Fields("id").Value & "," & _
                    rs.Fields("name").Value & "," & _
                    rs.Fields("sex").Value & "," & _
                    rs.Fields("section").Value
        ' 取得した1レコードをMsgBoxで出力
        MsgBox recordStr
        ' 次のレコードへ進む
        rs.MoveNext
    Loop
    '接続を閉じる
    rs.Close
    con.Close
    Set rs = Nothing
    Set con = Nothing
End Sub
実行結果
SQLiteへSELECT文を実行できました。
参考①
SQLiteの場合、「Rangeオブジェクト」の「CopyFromRecordset」メソッドでシートへデータの貼り付けができない場合があります。
詳細は以下の記事をご確認ください。
参考②
SQLiteへINSERT文の実行もできます。
詳細は以下の記事をご確認ください。
参考③
上記で使用した以下の詳細は、公式サイトをご確認ください。
●「Connectionオブジェクト」の「Open」メソッド
●「Connectionオブジェクト」の「Execute」メソッド

  
  
  
  




