Bonjour,
J'utilise le code d'export Excel que l'on trouve un peu partout et qui fonctionne pas trop mal. J'avais 2 points que je n'arrive pas à régler.
Mon GridView à l'en-tête de couleur bleu, quand je passe sur Excel c'est toute la ligne du fichier qui passe en bleu (ca dépasse du tableau pour aller jusqu'au bout du fichier.
Comment gérer les caractères spéciaux types accents ... ceux -ci ne passe pas ds l'export ou très mal.
Voici mon code pour infoMerci de vos infos
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 public void Export_GridView_Vers_Excel(HttpResponse HttpRP, GridView Grille,String filename) { try { // Efface les éventuelles données déjà dans la mémoire tampon HttpRP.Clear(); HttpRP.AddHeader("content-disposition", "attachment;filename=" + filename + ".xls"); //Place tout ce qui est destiné au client dans la mémoire tampon HttpRP.Buffer = true; //Définit le type d'informations renvoyée, ici des données au format Excel HttpRP.ContentType = "application/vnd.xls"; //Efface le jeu de caractères actuellement défini HttpRP.Charset = ""; //Instancie deux objets qui vont nous permettre de récupérer les données du Gridwiew : le StringWriter et l'HtmlTextWriter StringWriter SW = new StringWriter(); HtmlTextWriter HT = new HtmlTextWriter(SW); //Extrait le contenu du GridView dans l'HtmlTextWriter Grille.RenderControl(HT); //Copie le contenu extrait dans la mémoire tampon HttpRP.Write(SW.ToString()); //Ferme "le flux" de données et envoie les données au client HttpRP.End(); } catch(Exception e) { HttpRP.Write(e); } }
Partager