>> The only problem that I found and haven't figured out yet is that you need to know the name of the sheet.
Well ... Same arguement can be made about a databse table. You have to know its name to begin with. Yes, you can look it up in system tables, but you have to know what you're looking for.
Do you have to use the Excel.Application object model to get it and then use it with ADO?
Are building some kind of Excel data explorer application? Yes, you can use Excel.Application to get the names of all sheets in a workbook.
Also Sheet1 is a default name.