【发布时间】:2017-12-06 09:38:35
【问题描述】:
我正在尝试导入以分号“;”分隔的 CSV 文件放入一个 excel 对象中,以便我以后可以使用它。
理想情况下,我想使用 ADO、DAO 或 ADODB,这样我还可以在对象上运行 SQL 查询,并获取特定字段的总和,或字段总数等。
到目前为止,我已经得到了下面的代码,但它没有用“;”分割数据,所以它全部返回为 1 个字段,而不是可以处理的多个字段。
Sub Import()
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim f As ADODB.Field
Dim csvName, csvPath
csvPath = ActiveWorkbook.path
csvName = "fileName.csv"
conn.Open "DRIVER={Microsoft Text Driver (*.txt; *.csv)};DBQ=" & csvPath & ";"
rs.Open "SELECT * FROM " & csvName, conn, adOpenStatic, adLockReadOnly, adCmdText
Debug.Print rs.Fields
While Not rs.EOF
For Each f In rs.Fields
Debug.Print f.Name & "=" & f.Value
Next
Wend
End Sub
谁能告诉我如何用“;”分割数据并使用 SQL 查询对其进行查询?或者我可以加载 CSV 并查询某些列的其他对象。
【问题讨论】:
-
如果是关于Excel的,请标记一下
-
我想你会在这里得到所有答案:stackoverflow.com/a/11267603/78522
-
@DumitruDaniel 首先,抽出时间来感谢您之前在此处发布的帖子。到目前为止,您已给出 0 条反馈。
-
16 个问题并且没有接受的答案,所以我想我们可以假设您这次也不会努力接受任何答案。
-
嗨@Patrick Honorez,谢谢,但我需要将数据加载到对象中,而不仅仅是将其复制到我的工作表中。