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

C# Discussion :

Garder les zéros dans une cellule lors d'export du DataTable à un fichier excel


Sujet :

C#

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2009
    Messages : 45
    Points : 32
    Points
    32
    Par défaut Garder les zéros dans une cellule lors d'export du DataTable à un fichier excel
    Bonjour,
    je fais un export du DataTable en fichier excel mais le problème c'est que les zéro sont supprimés des cellules du fichier lorsque une chaine commence par 0.
    comment je peux modifier le fomat des cellules du fichier excel.
    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
     
    DataTable dt = new DataTable();
    dt = RecupererListe();
    context.Response.ClearContent();
                context.Response.AddHeader("content-disposition", "attachment;filename=" + nomFichier + ".xls");
                context.Response.ContentType = "application / vnd.ms-excel";
                context.Response.ContentEncoding = Encoding.Default;
     
                foreach (DataColumn dc in dt.Columns)
                {
                    context.Response.Write(onglet + dc.ColumnName);
                    onglet = "\t";
                }
                context.Response.Write("\n");
                foreach (DataRow dr in dt.Rows)
                {
                    onglet = string.Empty;
                    for (int i = 0; i < dt.Columns.Count; i++)
                    {
                        context.Response.Write(onglet  + (dr[i] == DBNull.Value ? string.Empty : dr[i].ToString()));
                        onglet = "\t";
                    }
                    context.Response.Write("\n");
                }
                context.Response.End();
    Merci.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2007
    Messages
    693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 693
    Points : 1 187
    Points
    1 187
    Par défaut
    Bonjour,

    Essaye en mettant un apostrophe ' en premier, Excel interprétera la valeur comme étant du texte !

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2009
    Messages : 45
    Points : 32
    Points
    32
    Par défaut
    Citation Envoyé par ostenhard Voir le message
    Bonjour,

    Essaye en mettant un apostrophe ' en premier, Excel interprétera la valeur comme étant du texte !
    Merci pour ta réponse. Mais j'ai mis un apostrophe mais il est afficher dans le fichier

  4. #4
    Membre éprouvé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2007
    Messages
    693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 693
    Points : 1 187
    Points
    1 187
    Par défaut
    Euh râté, c'est bizarre car directement dans Excel l'astuce marche très bien.

    Tu peux poster le nouveau code ?

  5. #5
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2009
    Messages : 45
    Points : 32
    Points
    32
    Par défaut
    Citation Envoyé par ostenhard Voir le message
    Euh râté, c'est bizarre car directement dans Excel l'astuce marche très bien.

    Tu peux poster le nouveau code ?
    Désolé pour le retard.
    j'ai ajouté seulement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    for (int i = 0; i < dt.Columns.Count; i++)
                    {
                        context.Response.Write(onglet + "'" + (dr[i] == DBNull.Value ? string.Empty : dr[i].ToString()));
                        onglet = "\t";
                    }

Discussions similaires

  1. controler les saisies dans une cellule
    Par lecaire dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/05/2008, 19h14
  2. [VBA Excel] Récuperation de l'erreur dans une cellule lors de sa lecture
    Par EvaristeGaloisBis dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 19/03/2008, 19h58
  3. comment en VBA mettre les mots dans une cellule en oblique
    Par antoine.dandois dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/02/2007, 17h10
  4. Forcer les majuscules dans une cellule d'un Datagrid
    Par Jean_dick15 dans le forum VB.NET
    Réponses: 7
    Dernier message: 24/01/2007, 21h14
  5. ne veut pas d'espaces entre les images dans une cellule
    Par cortex024 dans le forum Mise en page CSS
    Réponses: 6
    Dernier message: 07/12/2006, 15h30

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