Re: Accessing Excel to import Data into Access via ADO
From: Brendan Reynolds (brenreyn)
Date: 09/07/04
- Next message: Jim: "Re: Exporting query results to a spread***"
- Previous message: Cristian Nasaudean: "Re: Heelp! Microsoft access 2002 XP or Windows 2k BIG problem"
- In reply to: Peter Neumaier: "Accessing Excel to import Data into Access via ADO"
- Messages sorted by: [ date ] [ thread ]
Date: Tue, 7 Sep 2004 10:46:22 +0100
See the KB article at the following URL ...
http://support.microsoft.com/default.aspx?scid=kb;en-us;257819#Connect
Apparently, the default is to assume that the first row contains field
names. The KB article has the details.
-- Brendan Reynolds (MVP) http://brenreyn.blogspot.com The spammers and script-kiddies have succeeded in making it impossible for me to use a real e-mail address in public newsgroups. E-mail replies to this post will be deleted without being read. Any e-mail claiming to be from brenreyn at indigo dot ie that is not digitally signed by me with a GlobalSign digital certificate is a forgery and should be deleted without being read. Follow-up questions should in general be posted to the newsgroup, but if you have a good reason to send me e-mail, you'll find a useable e-mail address at the URL above. "Peter Neumaier" <zelja1@hotmail.com> wrote in message news:2q4aciFqq5vrU1@uni-berlin.de... > Hi NG! > > I am trying to import some Data from Excel-Sheets, the first step is to > import data from 12 Cellls, from A1 to D3: > > 12 34 56 77 > 33 44 5 1 > 33 21 34 12 > > to acces this data I use following code > > Call GetDataFromWork***("F:\test.xls", "SELECT * FROM [Tabelle1$A1:D3]") > > ''''''''''''''''''''''''''''''' > '------------------------------ > '''''''''''''''''''''''''''''''' > > Sub GetDataFromWork***(SourceFile As String, strSQL As String) > > Dim con As ADODB.Connection, rst As ADODB.Recordset, f As Integer, r As > Long > Set con = New ADODB.Connection > On Error Resume Next > con.Open "DRIVER={Microsoft Excel Driver > (*.xls)};DriverId=790;ReadOnly=True;" & _ > "DBQ=" & SourceFile & ";" > ' DriverId=790: Excel 97/2000 > > If con Is Nothing Then > MsgBox "Can't find the file!", vbExclamation, ThisWorkbook.Name > Exit Sub > End If > > ' open a recordset > Set rst = New ADODB.Recordset > > rst.Open strSQL, con , adOpenForwardOnly, adLockReadOnly , adCmdText > > If rst Is Nothing Then > MsgBox "Can't open the file!", vbExclamation, ThisWorkbook.Name > con.Close > Set con = Nothing > Exit Sub > Else > > Do While Not rst.EOF > For k = 0 To rst.Fields.Count - 1 > MsgBox rst.Fields.Item(k).Value > Next k > > rst.MoveNext > Loop > > End If > > If rst.State = adStateOpen Then > rst.Close > End If > Set rst = Nothing > con.Close > Set con = Nothing > End Sub > > The problem is, that I cant access the first line of my data(12,34,56,77), > so I tried it for the first with > MsgBox rst.Fields.Item(k).Name > this works only if my first-line-values are non-numerical, otherwise > I receive values for the first line like: "F1" for the first column, "F2" > for the 2nd column etc. Are there any workarounds for this issue!? > > After all, I have to select values from single cells from a Excel-***, > how is this realisable!? > > Thx in advance for any help/advice! >
- Next message: Jim: "Re: Exporting query results to a spread***"
- Previous message: Cristian Nasaudean: "Re: Heelp! Microsoft access 2002 XP or Windows 2k BIG problem"
- In reply to: Peter Neumaier: "Accessing Excel to import Data into Access via ADO"
- Messages sorted by: [ date ] [ thread ]