如何覆盖字段命名的标题?

时间:2016-04-27 06:24:54

标签: sql excel vba odbc adodb

Using SQL to query an Excel worksheet without a header row回应我在所有研究中发现的信息。但这不是我得到的。 Excel 2016中是否有更改,或者我的实现是错误的?

    Sub vndrrst()
        Dim cn As Object
        Set cn = CreateObject("adodb.connection")
        strfilename = ThisWorkbook.Path
        cn.ConnectionString = _
                "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strfilename & _
                ";Extended Properties=""text;HDR=NO;imex=1"";"
        cn.Open
        Set rs = cn.Execute("select * from My_Text_File.txt where F2='04-62425'")
        Set rs = Nothing
        Set cn = Nothing
    End Sub

错误消息显示“没有为一个或多个必需参数指定值”。在Set rs声明。当我将F2更改为MFGID(此文本文件标题中给出的实际字段名称)时,它会在调试窗口中运行并提供准确的输出...即使HDR=No

那么,如果文件这次有标题,我如何使用F字段名称?这变得有趣的原因是因为我有很多文本/ csv /分隔文件发送到我的FTP,一些有标题,一些没有,有些有时候有标题。

编辑:schema.ini文件读取

[My_Text_File.txt]
Format=TabDelimited

如果重要的话。

一个不同的相关问题是ADO Recordset to Excel spreadsheet opens properly in Excel 2007, has a missing parameter in Excel 2013,但OP的动机/项目是不同的,因此答案是无关紧要的。

0 个答案:

没有答案