un'occhiata a questo post: Excel "External table is not in the expected format."lettura xlsx salvato xls con LinqToExcel
Ho lo stesso problema descritto in questo post, ma sto usando LinqtoExcel per leggere il file invece di query semplici.
Quale sarebbe l'equivalente LinqToExcel per l'impostazione della stringa di connessione come suggerisce la risposta a tale post?
Ecco il codice che sto utilizzando:
var excelOM = new ExcelQueryFactory(pPathArchivoOM);
var despachosClient = from c in excelOM.Worksheet<RegistroDespachoOM>("Tabla_1")
where c.DESTINAT.Contains("SOMETEXT")
select c;
//Identificar los despachos asociados a números de documento sin datos aún.
foreach (RegistroDespachoOM despacho in despachosClient)
{ ...
E il mio problema è: "tabella esterna non è nel formato previsto" in partenza foreach.
EDIT (il mio problema è risolto ma la domanda rimane senza risposta): Sto usando EPPlus anziché LinqToExcel per questa attività e tutto funziona correttamente ora.
LinqToExcel funziona anche per file Excel 2007. Hai solo bisogno di utilizzare il motore di database Ace, che è spiegato nella risposta qui sotto. – Paul