IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

[ASP.NET 2.0] Export Excel file modifier la culture


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Points : 633
    Points
    633
    Par défaut [ASP.NET 2.0] Export Excel file modifier la culture
    Bonjour,

    je suis sur que le sujet à déjà été traité mais je n'arrive plus à retomber sur une réponse.
    Comment peut on modifier la culture juste avant d'exporter une gird en Excel ?

    J'ai un nombre 1,000 sur page web et cela m'affiche 10.00 sur excel.
    J'aimerai spécifier la culture, me semble que c'était ca, j'ai donc écrit la ligne suivante dans le Page_Load

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
     
    Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-US");
     
    Ou
     
    Thred.CurrentThread.CurrentUICulture = new CultureInfo("en-US");
    Rien ne fonctionne

    Merci

    Fix

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Points : 1 646
    Points
    1 646
    Par défaut
    comment tu fais ton export? je me demande si dans l'entête de ta page d'export tu ne peux pas mettre la culture je crois que si.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Points : 633
    Points
    633
    Par défaut
    voici le code:

    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
     
     
                gvData.DataSource = ds; 
                gvData.DataBind(); 
                string FileName = "FileName.xls"; 
                Response.ContentType = "application/vnd.ms-excel"; 
     
                Response.AddHeader("Content-Disposition", "attachment; filename=\"" + FileName + "\""); 
                Response.AddHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0"); 
                Response.AddHeader("Pragma", "no-cache"); 
                Response.AddHeader("Expires", "0"); 
                Response.Charset = ""; 
                string style = @"<style> .text { mso-number-format:""#,##0.0000;-#,##0.0000"" ; } </style> "; 
                using (StringWriter sw = new StringWriter()) 
                { 
                    HtmlTextWriter hw = new HtmlTextWriter(sw); 
                    this.Render(hw); 
                    Response.Write(sw.ToString()); 
                    Response.Write(style); 
                    Response.End(); 
                }

    Bon ca c'est le code que j'ai trouvé en attendant une meilleur solution
    Je parle de la ligne string = style .....

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Points : 1 646
    Points
    1 646
    Par défaut
    c'est comme ca l'export. et dedans tu ne peux pas mettre la culture? remate sur le net pour voir les options que tu aurais raté.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Février 2008
    Messages : 12
    Points : 14
    Points
    14
    Par défaut
    Salut,
    Pour le chiffre avec un point c'est bien excel qui fait la conversion auto au format numérique mais je comprend pas comment ca se fait que de 1 tu passes à 10.

    Je verrais mieux passer les styles en premier avant le flux HTML/chaine
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Response.Write(sw.ToString()); 
    Response.Write(style); 
    ==> 
    Response.Write(style); 
    Response.Write(sw.ToString());
    Ca pourrait etre une solution. A voir.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Points : 633
    Points
    633
    Par défaut
    ah non, ce que j'ai mis en dernier (code) fonctionne très bien.
    Et sinon sans mettre le style,

    J'ai en fait dans mon web site: 1,0000
    et cela devient 10.000 en excel, ce n'est pas 10 mais 10 000
    Mais bon j'aurai bien voulu avoir un truc à mettre dans un header, directement au lieu de devoir passer par un style.

    Merci

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2008
    Messages
    12
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Février 2008
    Messages : 12
    Points : 14
    Points
    14
    Par défaut
    ok je comprend mieux. Ta solution avec le style semble la plus pratique, ca évite de manipuler les données.

    Essaye de modifier le globalization dans le web.config pour voir si change qqchose.

    A+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. ASP.NET MVC 2 et Excel
    Par nadirhamza dans le forum ASP.NET MVC
    Réponses: 2
    Dernier message: 31/08/2011, 00h14
  2. [ASP.NET][C#]Export de plusieurs GridView vers Excel
    Par doudou_rennes dans le forum ASP.NET
    Réponses: 1
    Dernier message: 08/01/2008, 10h34
  3. [ASP.NET 1.1.43] Excel n'affiche rien
    Par predalpha dans le forum ASP.NET
    Réponses: 1
    Dernier message: 06/03/2007, 15h30
  4. Réponses: 1
    Dernier message: 12/07/2006, 11h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo