Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to retrieve data from Excel with ADODB connection if the first line of the worksheet does not have the column name?

Tags:

excel

vba

adodb

I use the following type of code to retrieve data from some Excel Workbooks (path is a Parameter)

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

That code works fine if the names of the fields are on the first row of the worksheet. The problem is that I need to retrieve data from a worksheet that the data table begins on another row (Row 10).

Is there a way to specify the first row of my data table?

like image 859
kb_sou Avatar asked Dec 20 '22 14:12

kb_sou


1 Answers

See this Microsoft page. You can use something like:

strSQL = "SELECT [Field1], [Field2] FROM [Worksheet$$A10:B43] WHERE [Thing1] > 1"
like image 178
Doug Glancy Avatar answered Jan 18 '23 23:01

Doug Glancy