从C#中读取Excel命名范围

时间:2018-04-18 16:21:03

标签: c# excel range oledb

我正试图从我的excel中读取一个命名区域,如下所示:

    conn.Open();
        using (OleDbCommand cmd1 = new OleDbCommand("SELECT * FROM [NamedRange]"))
        {
            cmd1.Connection = conn;
            //conn.Open();
            var result = cmd1.ExecuteReader();
            while (result.Read())
            {
                var str = result[0].ToString();
            }

        }

代码运行但跳过while循环。我知道应该读取我的命名范围,因为这种方法有效:

 OleDbDataAdapter da2 = new OleDbDataAdapter("Select * from [NamedRange]”, conn);
                    DataTable dt2 = new DataTable();
                    da2.Fill(dt2);

foreach (DataColumn Col in dt2.Columns)
                    {var str = Col.Caption}

我无法弄清楚为什么第一种方法不起作用。

0 个答案:

没有答案