MartyConnelly
martyconnelly at shaw.ca
Tue Oct 24 10:03:16 CDT 2006
Use ADO with the Jet OLE DB Provider
With Excel workbooks, the first row in a range is considered to be the
header row (or field names) by default. If the first range does not
contain headers, you can specify HDR=NO in the extended properties in
your connection string. If the first row does not contain headers, the
OLE DB provider automatically names the fields for you (where F1 would
represent the first field, F2 would represent the second field, and so
forth).
Other Jet Provider Connection Settings
Column headings: By default, it is assumed that the first row of your
Excel data source contains columns headings that can be used as field
names. If this is not the case, you must turn this setting off, or your
first row of data "disappears" to be used as field names. This is done
by adding the optional HDR= setting to the Extended Properties of the
connection string. The default, which does not need to be specified, is
HDR=Yes. If you do not have column headings, you need to specify HDR=No;
the provider names your fields F1, F2, etc. Because the Extended
Properties string now contains multiple values, it must be enclosed in
double quotes itself, plus an additional pair of double quotes to tell
Visual Basic to treat the first set of quotes as literal values, as in
the following example (where extra spaces have been added for visual
clarity). .
ConnectionString = "Data Source=C:\MyFolder\MyWorkbook.xls;" & _
"Extended Properties=" " Excel 8.0; HDR=No;" " "
ExcelADO.exe demonstrates how to use ADO to read and write data in Excel
workbooks
http://support.microsoft.com/?kbid=278973
or you can use DAO
Dim dbtmp As DAO.Database
Dim tblObj As DAO.TableDef
Dim rs As DAO.Recordset
Set dbtmp = OpenDatabase_
("<complete path>\test.xls", False, True, "Excel 8.0;")
DoEvents
' Note the reverse apostrophe "`" while specifying the range
' name(myrange2).
Set rs = dbtmp.OpenRecordset("select * from `myRange2`")
While Not rs.EOF
For x = 0 To rs.Fields.Count - 1
Debug.Print rs.Fields(x).Value
Next
rs.MoveNext
Wend
End Sub
Note the reverse apostrophe "`" while specifying the range
name(myrange2).
Darren DICK wrote:
>Further to my last
>
>Does anyone have any code that will remove the first line in an Excel doc but
>from Access?
>
>Many thanks again in advance
>
>Darren
>
>
> _____
>
>From: Darren DICK [mailto:darrend at nimble.com.au]
>Sent: Tuesday, 24 October 2006 11:55 PM
>To: 'Access Developers discussion and problem solving'
>Subject: A2003:Rename a file in a folder
>
>
>Hi all
>
>I have a file that will be always named the same - EG myCoolCSVfile.csv
>
>It will be dumped into a folder...say C:\MyCoolFolder at random times
>
>I need some code to Check the C:\myCoolFolder to see if the file
>myCoolCSVfile.csv file exists in the folder - and if it does to rename it to
>YYMMDDHHMMSS.csv
>
>Where YY = Year MM = Month DD = Day etc etc
>
>Does anyone have anything that might suit?
>
>Many thanks in advance
>
>Darren
>
>
--
Marty Connelly
Victoria, B.C.
Canada