【问题标题】:How to retrieve data from a SQLite Database in VBA in Excel?如何在 Excel 中从 VBA 中的 SQLite 数据库中检索数据?
【发布时间】:2018-03-31 21:54:06
【问题描述】:

我正在按照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 列,它不会输出任何内容,如果我选择任何其他列,它将检索数字为整数,但它们是长整数,

【问题讨论】:

  • 在 SQL 语句中实际命名列或仅使用表名是否有帮助?
  • @MP24 不,如果我选择单列也无济于事

标签: vba excel


【解决方案1】:

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

这让我可以复制整个表格并将其粘贴到工作表上

【讨论】:

    猜你喜欢
    • 2021-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-19
    • 1970-01-01
    • 2022-06-13
    相关资源
    最近更新 更多