C# 从excel工作表中检索值

C# 从excel工作表中检索值,c#,excel,C#,Excel,嘿,伙计们,我制作了一个1997年至2003年格式的excel文件,我试图从excel表中读取值,但它抛出了“外部表不是预期格式。”错误。我已经在我的机器上安装了microsoft 2013 office var fileName = @"C:\Users\Abhineet\Documents\True XL.xls."; var connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="

嘿,伙计们,我制作了一个1997年至2003年格式的excel文件,我试图从excel表中读取值,但它抛出了“外部表不是预期格式。”错误。我已经在我的机器上安装了microsoft 2013 office

        var fileName = @"C:\Users\Abhineet\Documents\True XL.xls.";
        var connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileName + ";Extended Properties=\"Excel 12.0;IMEX=1;HDR=NO;TypeGuessRows=0;ImportMixedTypes=Text\""; ;
        using (var conn = new OleDbConnection(connectionString))
        {
            conn.Open();

            var sheets = conn.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
            using (var cmd = conn.CreateCommand())
            {
                cmd.CommandText = "SELECT * FROM [" + sheets.Rows[0]["TABLE_NAME"].ToString() + "] ";

                var adapter = new OleDbDataAdapter(cmd);
                var ds = new DataSet();
                adapter.Fill(ds);
            }
        }
        Console.WriteLine("Success");
    }

请帮助

您可以尝试此操作,将您的命令文本行替换为以下命令行:

cmd.CommandText = "SELECT * FROM [" + sheets + "] ";

抛出错误外部表不是预期格式