Creer un fichier Excel [Résolu]

Messages postés
260
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
3 novembre 2007
- - Dernière réponse : RTN
Messages postés
2
Date d'inscription
jeudi 2 septembre 2004
Statut
Membre
Dernière intervention
7 mars 2007
- 7 mars 2007 à 16:25
Bonjour a tous,
J'aimerais créer un fichier Excel sur mon server. Cependant, Office n'est pas installé dessus.
Existe-t-il un moyen simple afin de pouvoir creer et modifier ensuite ce fichier Excel.

Merci d'avance

ElpenS
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
Messages postés
426
Date d'inscription
mercredi 22 janvier 2003
Statut
Modérateur
Dernière intervention
13 juillet 2007
3
Merci
Bonjour,

Voici un exemple pour envoyer un fichier Excel construit à partir d'un dataset.

DataGrid export = new DataGrid();
export.DataSource = xls;
export.AllowSorting = false;
export.DataBind();
HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF7;
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.Buffer= true;
HttpContext.Current.Response.Cache.SetExpires(DateTime.Now.AddSeconds(1));
HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
HttpContext.Current.Response.Charset = "";
this.EnableViewState = false;
System.IO.StringWriter sw = new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter tw = new System.Web.UI.HtmlTextWriter(sw);
export.RenderControl(tw);
HttpContext.Current.Response.AddHeader("content-disposition", "attachment;filename="+"nomfichier"+".xls");
HttpContext.Current.Response.Write(sw.ToString());
HttpContext.Current.Response.End();

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 108 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cs_azra
Messages postés
260
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
3 novembre 2007
0
Merci
Merci pour ta solution, elle me parait très bien.
Je vais la tester,...

ElpenS
Commenter la réponse de cs_elpens
Messages postés
260
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
3 novembre 2007
0
Merci
En fait, ce serait presque plus pratique de pouvoir le telecharger du coté client, sans passer par le server...

Je voulais effectuer cela pour avoir une trace des fichiers mais apparamment, je n'en ai plus besoin ensuite.
Donc rien ne sert de surcharger le server avec des manipulation inutiles

Merci quand meme de ton aide et si vous avez une proposition a me faire concernant (cette fois-ci) le telechargement coté client , je suis preneur.

Bonne soirée a tous

ElpenS
Commenter la réponse de cs_elpens
Messages postés
1648
Date d'inscription
samedi 6 novembre 2004
Statut
Modérateur
Dernière intervention
28 avril 2011
3
0
Merci
La solution que t'as donné azra correspond bien à ce que tu veux : elle ne stocke rien sur le serveur !! elle ne fait que faire télécharger le fichier excel !
non ?

Qu'est ce que tu veux dire par : "(cette fois-ci) le telechargement coté client"

Nurgle
Commenter la réponse de cs_Nurgle
Messages postés
260
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
3 novembre 2007
0
Merci
Ouais, desolé, j'ai totalement halluciné....

Sorry,

ElpenS
Commenter la réponse de cs_elpens
Messages postés
39
Date d'inscription
dimanche 29 juin 2003
Statut
Membre
Dernière intervention
7 juillet 2006
0
Merci
cette solution me dépanne bien aussi
cependant, une petite question : le fichier xls que j'obtiens est un peu formatté (mise en page), y a-t-il un moyen de supprimer cette mise en forme afin d'obtenir un xls "brut"
merci bcp d'avance
Commenter la réponse de cs_zarzar
Messages postés
2
Date d'inscription
lundi 10 mars 2003
Statut
Membre
Dernière intervention
7 novembre 2007
0
Merci
Salut,


Je debute en .NET et cherche a faire un export d'une gridview


ton code a l'air bien sympa, j'ai changé datagrid par gridview mais je ne vois pas ou il va chercher les données dans ton code ?!?


j'imagine qu'elles sont dans la variable xls, mais de qu'es ce qu'elle doit etre ?


 


merci
Commenter la réponse de cs_bixy
Messages postés
1
Date d'inscription
lundi 30 décembre 2002
Statut
Membre
Dernière intervention
12 septembre 2006
0
Merci
Bonjour,
Souhaitant exporter un GridView au format Excel, j'ai essayé d'utiliser ce code. Mais il me sort : "Le contrôle 'GV_Results_List' de type 'GridView' doit être placé dans une balise form avec runat=server."
Voici mon code : HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.UTF7
HttpContext.Current.Response.Clear()
HttpContext.Current.Response.Buffer =

True
HttpContext.Current.Response.Cache.SetExpires(DateTime.Now.AddSeconds(1))
HttpContext.Current.Response.ContentType = "application/vnd.ms-excel"
HttpContext.Current.Response.Charset =
""
Me
.EnableViewState =
False
Dim
sw
As

New
StringWriter
Dim
tw
As

New
UI.HtmlTextWriter(sw)
GV_Results_List.RenderControl(tw)
HttpContext.Current.Response.AddHeader("content-disposition"
,
"attachment;filename="
+
"nomfichier"
+
".xls"
)
HttpContext.Current.Response.Write(sw.ToString())
HttpContext.Current.Response.End()

Quelqu'un pourrait m'aider s'il vous plait?

Stef
Commenter la réponse de stefpana
Messages postés
2
Date d'inscription
jeudi 2 septembre 2004
Statut
Membre
Dernière intervention
7 mars 2007
0
Merci
Bonjour ( Manao ahoana )
essaie d'ajouter ce code dans le codebehind de ta page aspx.

    public override void VerifyRenderingInServerForm(Control control)
    {
        // Confirms that an HtmlForm control is rendered for the specified ASP.NET server control at run time.
    }

RTN infogasy

C# DEV
Commenter la réponse de RTN

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.