System.Data.OleDb.OleDbException: Could not find installable ISAM
asp.net, oledb
Solution
If you use more than 1 extended property then the value tokens must be quoted, otherwise there is no way for the driver to distinguish them from the other non-extended properties in the connection string;
...Extended Properties=""Excel 8.0;IMEX=1"""
modify your connection string
String.Format(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=pricelist.xlsx;Extended Properties=""Excel 12.0 Xml;HDR=YES""");
reference: Could not find installable ISAM
Problem
I have scoured the net, and found many people asking this, yet none have fixed my answer. I have a Connection Class, and a Method that uses that Class in a page. DataConn.cs ``` public static OleDbConnection ConnectExcel() { //Store the connection details as a string string connstr = String.Format(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=pricelist.xlsx;Extended Properties=Excel 12.0 Xml;HDR=YES"); //Initialise the connection to the server using the connection string. OleDbConnection oledbConn = new OleDbConnection(connstr); //Open the connection, we do this here so we can instantly be able to use SQL commands in the code. oledbConn.Open(); return oledbConn; } public static void DisconnectExcel() { _oledbConn.Dispose(); _oledbConn.Close(); } ``` And the code that calls it ``` protected void Page_Load(object sender, EventArgs e) { // Connection String const string xlStr = "SELECT * FROM [Sheet2$]"; // Create OleDbCommand object and select data from worksheet Food OleDbCommand cmd = new OleDbCommand(xlStr, DataConn.ConnectExcel()); // Create new OleDbDataAdapter OleDbDataAdapter oleda = new OleDbDataAdapter(); oleda.SelectCommand = cmd; // Create a DataSet which will hold the data extracted from the worksheet. DataSet ds = new DataSet(); // Fill the DataSet from the data extracted from the worksheet. oleda.Fill(ds); // Bind the data to the GridView gridPricelist.DataSource = ds; gridPricelist.DataBind(); } ``` Yes I STILL get: System.Data.OleDb.OleDbException: Could not find installable ISAM. Can anyone please help?