Excel“外部表的格式不正确。”

西苏特尔

我正在尝试使用下面显示的代码读取Excel(xlsx)文件。我得到“外部表不是预期的格式”。错误,除非我已经在Excel中打开了文件。换句话说,我必须先在Excel中打开文件,然后才能从C#程序中读取文件。xlsx文件在我们的网络上共享。如何读取文件而不必先打开它?谢谢

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);
}
气球

“外部表的格式不正确。” 尝试使用带有以下连接字符串的Excel 2007文件时,通常会发生这种情况:Microsoft.Jet.OLEDB.4.0和Extended Properties = Excel 8.0

使用以下连接字符串似乎可以解决大多数问题。

public static string path = @"C:\src\RedirectApplication\RedirectApplication\301s.xlsx";
public static string connStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=Excel 12.0;";

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章