C#Excel读取问题

时间:2010-08-06 12:36:14

标签: c# excel

我的擅长

|Name|Telephone|
|Color|Car|
|John|Jon|

我需要“|约翰|乔恩|”如何选择OleDbCommand?第三排开始

我的Csharp Not Work Code:

ExcelCommand.CommandText = @"SELECT * FROM " + SpreadSheetName + " Where RowNumber > 3";

谢谢...

2 个答案:

答案 0 :(得分:1)

这对我有用。您可以根据需要更改SELECT语句(特定行,多列,...)以获取单个结果或返回的一组行。

string connectionString = @"Provider=Microsoft.Jet.OleDb.4.0;Data Source=test.xls;";
connectionString += "Extended Properties=Excel 8.0;";
OleDbConnection con = new OleDbConnection(connectionString);

DataSet ds = new DataSet("stuff");

OleDbDataAdapter adapter = new OleDbDataAdapter();
// adapter.SelectCommand = new OleDbCommand("Select * from [Sheet1$A1:A100];", con);
// adapter.SelectCommand = new OleDbCommand("Select * from [Sheet1$];", con);
adapter.SelectCommand = new OleDbCommand("Select * from [Sheet1$] where [A] = 'John';", con);
adapter.Fill(ds);

foreach (DataRow dr in ds.Tables[0].Rows)
{
    foreach (DataColumn dc in ds.Tables[0].Columns)
    {
        Console.WriteLine(dr[dc].ToString());
    }
}

答案 1 :(得分:0)

可以改为“RowNumber> 3”使用“RowNumber = 3”。 “|约翰|乔恩|” - 第三排。