Sto cercando di leggere un file Excel (xlsx) utilizzando il codice mostrato di seguito. Ottengo un "Tavolo esterno non è nel formato previsto." errore a meno che il file non sia già aperto in Excel. In altre parole, devo aprire il file in Excel prima di poter leggere se dal mio programma C #. Il file xlsx è su una condivisione sulla nostra rete. Come posso leggere il file senza prima aprirlo? Grazie
string sql = "SELECT * FROM [Sheet1$]";
string excelConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + pathname + ";Extended Properties=\"Excel 8.0;HDR=YES;IMEX=1;\"";
using (OleDbDataAdapter adaptor = new OleDbDataAdapter(sql, excelConnection)) {
DataSet ds = new DataSet();
adaptor.Fill(ds);
}