役に立ちましたか?

解決

Excelクエリのエキスパートではありませんが、これは確かに機能します。 TOPを使用して、クエリを13行に制限します。最初の行は列名を持つヘッダーであるため、カウントされない場合があります。誤解したら明らかに変更してください。次に、行IDを追跡し、4以降の行に処理を行います。

これがお役に立てば幸いです!

string connectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Book1.xls;Extended Properties=""Excel 8.0;HDR=YES;""";
using (System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection(connectionString)) {
    System.Data.OleDb.OleDbCommand cmd = new System.Data.OleDb.OleDbCommand();
    cmd.Connection = conn;
    cmd.CommandText = "SELECT top 13 City,State FROM [Cities$]";

    conn.Open();
    System.Data.IDataReader dr = cmd.ExecuteReader();

    int row = 2;
    while (dr.Read()) {
        if (row++ >= 4) {
            // do stuff
            Console.WriteLine("{0}, {1}", dr[0], dr[1]);
        }
    }
}
scroll top