Bonjour,
Dans un programme, j'importe une feuille d'un fichier Excel *.xls (Excel 97 - 2003) vers un DataSet.
Jusqu'ici, pas de problème. Cependant, j'aimerais pouvoir faire de même avec les fichier *.xlsx.
Connaissez vous une solution?
Actuellement, si j'essaie d'importer un fichier xlsx, j'ai l'erreur suivante:
Voici mon code (au cas où):La table externe n'est pas dans le format attendu.
Merci pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 public static DataSet excelToTable(String urlFichier) { DataSet ds = new DataSet(); using (OleDbConnection conn = new OleDbConnection()) { using (OleDbCommand cmd = new OleDbCommand()) { conn.ConnectionString = "Provider=Microsoft.Jet.Oledb.4.0;Data Source=" + urlFichier + ";Extended Properties=Excel 8.0;"; String nomFeuille = "Feuil2"; cmd.CommandText = "SELECT * FROM [" + nomFeuille + "$]"; cmd.Connection = conn; OleDbDataAdapter da = new OleDbDataAdapter(cmd); try { da.Fill(ds); } catch (Exception ex) { log.Error("excelToTable() : " + ex.Message); } } } return ds; }
Partager