MartyConnelly
martyconnelly at shaw.ca
Thu Jun 12 21:39:08 CDT 2003
You can get at it this way using ADO 2.7 with something like this Dim oConn As New ADODB.Connection Dim Ors As ADODB.Recordset Dim c as long Set Ors = New ADODB.Recordset With oConn .Provider = "Microsoft.Jet.OLEDB.4.0" .Properties("Extended Properties").Value = "Excel 8.0" .Open "C:\Excel\ExcelADO\results\Products.xls" .CursorLocation = adUseClient 'need otherwise recordcount=-1 '.... Ors.Open "Select * from [Products]", oConn, adOpenStatic 'Sheet1$ or Products sheetname For c = 0 To Ors.RecordCount - 1 'the field order of columns does not always follow the sheet order Debug.Print Ors.Fields(0).Value; Ors.Fields(0).Name Debug.Print Ors.Fields(1).Value Ors.MoveNext 'just stuff these values in a table Next End With oConn.Close ------------------ or look at the schema of the sheet for sheet names and field names and types Dim oConn As New ADODB.Connection Dim rst As New ADODB.Recordset Dim intTblCnt As Integer, intTblFlds As Integer Dim strTbl As String Dim rstSch As ADODB.Recordset Dim rsC As ADODB.Recordset Dim Ors As ADODB.Recordset Dim intColCnt As Integer, intColFlds As Integer Dim strCol As String Dim t As Integer, c As Integer, f As Integer With oConn .Provider = "Microsoft.Jet.OLEDB.4.0" .Properties("Extended Properties").Value = "Excel 8.0" .Open "C:\Excel\ExcelADO\results\Products.xls" .CursorLocation = adUseClient 'need otherwise recordcount=-1 '.... 'Me.cmbSheetCombo.RowSource = rst Set rstSch = oConn.OpenSchema(adSchemaTables) intTblCnt = rstSch.RecordCount intTblFlds = rstSch.Fields.Count MsgBox intTblCnt & "*?" & intTblFlds 'List1.AddItem "Tables: " & intTblCnt 'List1.AddItem "--------------------" Dim strList As String strList = "" For t = 1 To intTblCnt strTbl = rstSch.Fields("TABLE_NAME").Value Debug.Print vbTab & "Table #" & t & ": " & strTbl Debug.Print vbTab & "--------------------" MsgBox strTbl strList = strList & strTbl & ";" For f = 0 To intTblFlds - 1 Debug.Print vbTab & rstSch.Fields(f).Name & _ vbTab & rstSch.Fields(f).Value Next ' List1.AddItem "--------------------" Set rsC = oConn.OpenSchema(adSchemaColumns, Array(Empty, Empty, strTbl, Empty)) intColCnt = rsC.RecordCount intColFlds = rsC.Fields.Count For c = 1 To intColCnt strCol = rsC.Fields("COLUMN_NAME").Value Debug.Print vbTab & vbTab & "Column #" & c & ": " & strCol Debug.Print vbTab & vbTab & "--------------------" For f = 0 To intColFlds - 1 ' Debug.Print vbTab & vbTab & rsC.Fields(f).Name & _ ' vbTab & rsC.Fields(f).Value Next 'List1.AddItem vbTab & vbTab & "--------------------" rsC.MoveNext Next rsC.Close 'List1.AddItem "--------------------" Next End With oConn.Close Don Elliker wrote: > Then I am back to the "There is no object in this control" error > reported earlier. This comes up when attempting to import using the > wizard....I just AM screwed am I not? Well , I have the no-help desk > personnel coming for a visit later > _D > > > > > "Things are only free to the extent that you don't pay for them".-Don > Elliker > > >Once the Import Spreadsheet Wizard starts you should see two radio > button > >(Show Worksheets and Show Named Ranges). Make sure the Show > Worksheets >one is checked and then you should see a list of the > worksheets within >your file. Then just select the one you want to > import and keep answering >the wizard's questions. Repeat the process > for each worksheet to import. > > > > >"Don Elliker" >Sent by: > accessd-bounces at databaseadvisors.com >06/12/2003 10:46 AM >Please > respond to accessd > > > To: accessd at databaseadvisors.com > cc: > > Subject: [AccessD] Phun with Excel / automation > > >Folks, >I am > trying to import ,on a one time basis , the data from an excel > >workbook into Access XP. I can't use the 'import data' option, it > only >gets me the first worksheet (or am I doing it wrong?). I can get > to the >workbook in code easily enough but there seems no easy way to > get the >individual worksheets imported into separate tables. I tried > using the >'transferspreadsheet' docmd thingie, but it gets hung up on > the file name. >I cannot just reference the worksheet object- it > doesn't like that. I >thought it was working out too easily...#-( - > Sooo...does anyone have >this experience...this is a one-off I just > want the data in tables. >"Things are only free to the extent that you > don't pay for them".-Don >Elliker > >Add photos to your e-mail with > MSN 8. Get 2 months > FREE*._______________________________________________ >AccessD mailing > list >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd >Website: > http://www.databaseadvisors.com > > > >_______________________________________________ >AccessD mailing list > >AccessD at databaseadvisors.com > >http://databaseadvisors.com/mailman/listinfo/accessd >Website: > http://www.databaseadvisors.com > > ------------------------------------------------------------------------ > MSN 8 helps ELIMINATE E-MAIL VIRUSES. > <http://g.msn.com/8HMCENUS/2752??PS=> Get 2 months FREE*. > >------------------------------------------------------------------------ > >_______________________________________________ >AccessD mailing list >AccessD at databaseadvisors.com >http://databaseadvisors.com/mailman/listinfo/accessd >Website: http://www.databaseadvisors.com > >