excel - 如果工作表的第一行没有列名,如何通过 ADODB 连接从 Excel 中检索数据?

标签 excel vba adodb

我使用以下类型的代码从一些 Excel 工作簿中检索数据(路径是一个参数)

Dim strSQL  As String, conStr as String
Dim cnn As New ADODB.Connection
Dim rs As New ADODB.Recordset


conStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source='" & path & "';" & _
             "Extended Properties=""Excel 12.0;HDR=YES;IMEX=1;"";"

strSQL = "SELECT [Field1], [Field2] FROM [Worksheet$] WHERE [Thing1] > 1"

cnn.open conStr   
rs.Open query, cnn, adOpenStatic, adLockOptimistic, adCmdText

如果字段的名称位于工作表的第一行,则该代码可以正常工作。问题是我需要从数据表从另一行(第 10 行)开始的工作表中检索数据。

有没有办法指定我的数据表的第一行?

最佳答案

看到这个Microsoft page .你可以使用类似的东西:

strSQL = "SELECT [Field1], [Field2] FROM [Worksheet$$A10:B43] WHERE [Thing1] > 1"

关于excel - 如果工作表的第一行没有列名,如何通过 ADODB 连接从 Excel 中检索数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12979605/

相关文章:

mysql - 通过VBA将Excel中的数据添加到Mysql

php ADODB 在连接到 MySQL 之前调用 mysql_options()

error-handling - 如果SQL Server没有加密,则VB6使用crypto = true管理错误

Node.js Web 和移动应用程序 - 在哪里读取 Excel 文件?

excel - 如何在vba中打开存档中的文件而不解压存档

arrays - 使用数组使用 VBA for Excel 获取 HTML 表格内容

excel - 在多个监视器上居中用户窗体

excel - Excel ADODB查询中的VBA函数

excel - 使用 Worksheet_SelectionChange 覆盖条件格式

excel - 获取多个规模不同的组的组平均值