Nombre de ligne d'un fichier xls (Excel)

oxboz Messages postés 30 Date d'inscription samedi 16 août 2003 Statut Membre Dernière intervention 8 juin 2006 - 12 avril 2005 à 14:15
titeoe Messages postés 433 Date d'inscription samedi 26 avril 2003 Statut Membre Dernière intervention 4 décembre 2009 - 13 avril 2005 à 15:02
Bonjour,



La question est simple:

Est ce possible d'avoir le nombre de lignes d'un fichier Excel? Si oui comment ? :)



Merci.

3 réponses

titeoe Messages postés 433 Date d'inscription samedi 26 avril 2003 Statut Membre Dernière intervention 4 décembre 2009 1
13 avril 2005 à 14:21
étape 1 : fais une connection vers ton fichier excel
étape 2 : fais un objet command dont la requete sera : " select count(*) from [nom de l'onglet]"
étape 3 : utilise la méthode execute scalar.

exemple :



int nbLignes = 0 ;



try


{


OleDbConnection conn =
new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=Excel 8.0;Data Source=" + filename);


conn.Open() ;


OleDbCommand maCommande =
new OleDbCommand() ;


maCommande.CommandText = "select count(*) from onglet1" ;


maCommande.Connection = conn ;


nbLignes = maCommande.ExecuteScalar() ;


maCommande.Cancel() ;


}



catch


{




maCommande.Dispose() ;


}
0
titeoe Messages postés 433 Date d'inscription samedi 26 avril 2003 Statut Membre Dernière intervention 4 décembre 2009 1
13 avril 2005 à 14:25
ou sinon :

OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=Excel 8.0;Data Source=" + filename);


OleDbDataAdapter Dta new SqlDataAdapter("select count(*) from onglet1" WHERE 1 0", conn );


DataSet ds =
new DataSet();


OleDbCommandBuilder
CmdBuilder = new OleDbCommandBuilder (Dta );



Dta .Fill(ds );


int nbLignes =
ds .Tables[0].Rows.Count ;
0
titeoe Messages postés 433 Date d'inscription samedi 26 avril 2003 Statut Membre Dernière intervention 4 décembre 2009 1
13 avril 2005 à 15:02
petite erreur dans la solution 1 :


int nbLignes = 0 ;



try


{


OleDbConnection conn =
new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties=Excel 8.0;Data Source=" + filename);


conn.Open() ;


OleDbCommand maCommande =
new OleDbCommand() ;


maCommande.CommandText = "select count(*) from onglet1" ;


maCommande.Connection = conn ;


nbLignes = maCommande.ExecuteScalar() ;


maCommande.Cancel() ;


}



catch


{




//traitement de l'erreur


}


finally


{




maCommande.Dispose() ;


conn.Close() ;
}

désolé :)
0
Rejoignez-nous