VBA adodb记录集字段名包含哈希符号而不是点

问题描述 投票:1回答:1

我编写了excel宏,它将CSV文件导入到内部自定义数据集中,以备将来在其他函数中使用。我正在使用Schema.ini文件为CSV文件中的每个列配置字段类型。我遇到了一个无法在网上找到解决方案的问题。 CSV文件正在正确读取,但在原始CSV列标题中包含一个点符号“。”记录集将其读作哈希符号“#”。有什么设置我应该注意,以使宏工作好吗?

Dim sqlConnection As ADODB.Connection
Set sqlConnection = CreateObject("ADODB.Connection")
Dim sqlRecordset As ADODB.Recordset
Set sqlRecordset = CreateObject("ADODB.Recordset")

sqlConnection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
      "Data Source=" & sCSVFolderPath & ";" & _
      "Extended Properties=""text;HDR=YES;FMT=Delimited(,)"""

sqlRecordset.Open "SELECT * FROM " & "[" & sCSVFileName & "]", _
          sqlConnection, sqlOpenStatic, sqlLockOptimistic, adCmdText

再次 - 任何时候列标题都包含点符号(即'Header.1'),它将被哈希符号('标题#1')读取。

vba adodb recordset
1个回答
0
投票

在我看来,好像adodb用哈希字符替换了分隔符(如点)。如果你确定你的字段名称不包含哈希值,你可以将它们改回点,但我不会称之为解决方案....

不知道其他字符是否也被adobd取代。

© www.soinside.com 2019 - 2024. All rights reserved.