The Microsoft Jet database engine could not find the object 'Sheet1$'
asp.net, oledb, xls
Solution
I've found the problem.
It seems the spreadsheet was being saved to the wrong location, so `filepath` wasn't pointed to a file which exists.
I didn't check this at first because I assumed a different error message would appear. Something like "Book1.xls could not be found". However it seems like if it doesn't exist, then the message will just state that it cannot find the Worksheet.
Problem
I'm attempting to read a spreadsheet file called `Book1.xls` which contains a worksheet called `Sheet1` However I'm getting the following error: The Microsoft Jet database engine could not find the object 'Sheet1$'. Make sure the object exists and that you spell its name and the path name correctly. Here is a snippet of the code I'm using: ``` Dim dt As DataTable = New DataTable() Select Case fileExt Case ".csv" Dim reader As New CsvReader dt = reader.GetDataTable(filePath) Case ".xls", ".xlsx" Dim oleDbConnStr As String Select Case fileExt Case ".xls" oleDbConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & filePath & ";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=2""" Case ".xlsx" oleDbConnStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & filePath & ";Extended Properties=""Excel 12.0;HDR=Yes;IMEX=2""" End Select Using oleDbConn As OleDbConnection = New OleDbConnection(oleDbConnStr) oleDbConn.Open() Dim oleDbCmd As New OleDbCommand("SELECT * FROM [Sheet1$]", oleDbConn) Dim oleDbDa As New OleDbDataAdapter(oleDbCmd) oleDbDa.Fill(dt) oleDbConn.Close() End Using End Select ``` I can't understand why the code cannot find my worksheet. Why is this, and how can I resolve it?