Problème passage DataTable dans un fichier Excel.
Bonjour à tous.
J'expose un peu la situation de mon appli :
-J'ouvre un fichier excel qui remplis un datatable qui rempli un datagridview .
-Je rajoute une colonne avec des images.
-Je manipule.
-Je veux enregistrer mon datagridview sous form excel.
-J'ai besoin d'enlever la colonne image que je ne veux pas dans mon excel.
-Je fais :
Code:
1 2 3 4
|
DataGridView pourExport = new DataGridView();
pourExport = DGView;
pourExport.Columns[pourExport.Columns.Count - 1].Dispose(); |
-Je créé mon fichier excel dans lequel je veux enregistrer.
Code:
1 2 3 4 5 6 7 8 9
|
FileInfo monFileCorrige = new FileInfo(nameXls.Substring(0, nameXls.Length - 4) + @"_Modifie.xls");
FileStream monST;
if (monFileCorrige.Exists)
{
monFileCorrige.Delete();
}
monST = monFileCorrige.Create();
monST.Close(); |
puis j'essaye d'enregistrer en utilisant :
Code:
1 2
|
EcrireTableOleDb(@"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + monFileCorrige.FullName + "; Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1\";",dt); |
Puis j'utilise un code trouvé ici :
http://www.developpez.net/forums/d69...dataset-oledb/
Le problème c'est que ça me génère l'erreur :
Citation:
"La table externe n'est pas dans le format attendu"
J'ai pensé que la génération du fichier excel sous 2007 entrainait d'autres propriétés.
Mais si j'essaye cela par exemple :
Code:
@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source="+ monFileCorrige.FullName +";Extended Properties=\"Excel 12.0 Xml;HDR=YES\";
En donnant à mon fichier l'extension xlsx ou xls l'erreur est la même.
En espérant des pistes ou des solutions.
Merci.