如何从Excel中的VBA中的SQLite数据库中检索数据?

时间:2018-03-17 11:42:55

标签: excel vba excel-vba

我正在按照此question的答案,使用ADO从VBA连接到.db文件。我的代码正确连接但它没有从表中检索正确的数据。在我的表中我有几列,第一列是INT,第二列是TEXT,其余都是INT。

Dim conn As Object, rst As Object
Dim strSQL As String
Set conn = CreateObject("ADODB.Connection")
Set rst = CreateObject("ADODB.Recordset")


conn.Open "DRIVER=SQLite3 ODBC  Driver;Database=C:\Path\To\SQLite\Database.db;"

strSQL = "SELECT * from paston"


rst.Open strSQL, conn


Sheets("sheet2").Range("A1").CopyFromRecordset rst
rst.Close


Set rst = Nothing: Set conn = Nothing

问题是,当我在工作表上选择全部时,我只获取第一列idx,如果我只选择TEXT列,它将不输出任何内容,如果我选择任何其他列,它将检索数字为整数,但它们很长,

1 个答案:

答案 0 :(得分:1)

放弃后回来我看了video,我发现了一个不同之处:     rst.Open strSQL, conn, 1, 1

这允许我复制整个表格并将其粘贴到表格上