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

Macros et VBA Excel Discussion :

CSV Format Texte transforme en format numerique


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti Avatar de Contrec
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    597
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38

    Informations forums :
    Inscription : Mars 2005
    Messages : 597
    Points : 342
    Points
    342
    Par défaut CSV Format Texte transforme en format numerique
    Bonjour,

    Je sais que cette question a ete traitee plusieurs fois mais je n'ai pas trouve de reponses claires a mon probleme. J'ai aussi fait des recherches pas tres concluantes.

    Voici mon probleme: J'utilise un code c# pour generer un fichier .CSV. Les donnees doivent etre considerees comme etant du texte. Or, apres l'export des donnees, lorsque j'ouvre mon .CSV, les cellules sont refornattees en numerique. Ce n'est pas bien grave en soit car on peut changer le format des cellules.
    Par contre, je voudrai exporter mes donnees sous le format texte pour ne pas que l'utilisateur ai a changer manuellement le format.

    Toute les donnees du genre "08", "0056" sont affichees comme ceci : "8", "56".

    J'ai essaye de mettre des guillemets, des cotes, une seule cote au debut, tout mais sans resultats.
    Quelqu'un sait comment faire ? une piste ?

    PS: Lorsque j'ouvre mon CSV avec un editeur de texte j'ai les bonnes valeur 08, 0056.
    Contrec

  2. #2
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    en Excel, il faut une ' et pas " pour identifier du texte.
    J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
    Débutez en VBA

    Mes articles


    Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !

  3. #3
    Membre averti Avatar de Contrec
    Homme Profil pro
    Inscrit en
    Mars 2005
    Messages
    597
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38

    Informations forums :
    Inscription : Mars 2005
    Messages : 597
    Points : 342
    Points
    342
    Par défaut
    Oui mais lorsque j emet une ' il m'exporte '08 dans la cellule...

    J'ai essaye tout plein de combinaisons sans succes...
    Contrec

  4. #4
    En attente de confirmation mail
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Septembre 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8
    Points : 8
    Points
    8
    Par défaut
    Salut, moi j'ai réussi en bidouillant plus ou moins la chose suivante:

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT '="'||ma_colonne||'"' FROM ma_table;

    Ici, ma_colonne est une colonne de type VARCHAR qui comporte des données du genre 01150, 02800 (typiquement des codes postaux).

    Je retrouve bien 01150, 02800 ... dans Excel.

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1
    Points : 1
    Points
    1
    Par défaut
    Super, ça marche !
    Merci beaucoup !

  6. #6
    En attente de confirmation mail
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Septembre 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8
    Points : 8
    Points
    8
    Par défaut
    De rien, si ça peut rendre service...
    En fait je ne suis pas du tout expert en Excel, mon truc à moi c'est plutôt Oracle !
    Je pense que le = permet de faire croire à Excel qu'il s'agit une formule pour chaque cellule. Enfin le principal est que ça marche !

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Mars 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant SAP
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2011
    Messages : 3
    Points : 6
    Points
    6
    Par défaut
    Citation Envoyé par olivier131 Voir le message
    Salut, moi j'ai réussi en bidouillant plus ou moins la chose suivante:

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT '="'||ma_colonne||'"' FROM ma_table;

    Ici, ma_colonne est une colonne de type VARCHAR qui comporte des données du genre 01150, 02800 (typiquement des codes postaux).

    Je retrouve bien 01150, 02800 ... dans Excel.

    Bonjour,

    comme l'a dit Contrec, la ' en remplacement du " ne fonctionne pas car on récupère les ' dans la feuille excel, très mauvaise suggestion.

    Mais où placer ce code dans le csv pour que les zones texte soir effectivement prises comme du texte ?

    Merci.

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Consultant SAP
    Inscrit en
    Mars 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant SAP
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2011
    Messages : 3
    Points : 6
    Points
    6
    Par défaut
    Bonjour,

    j'ai trouvé une solution dans un autre forum :

    entourer toutes les cellules (dans le fichier .csv construit) comme ceci :
    =("00001")

    Ceci permettra d'obtenir dans excel, lors de l'ouverture, la valeur 00001 dans la cellule et sera considéré comme 'Texte'

    Merci à Lepei

    Naturellement le formule reste dans la feuille excel mais l'affichage est correct.

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 26/06/2015, 14h35
  2. [XL-2007] Ouverture CSV en format texte
    Par DarkGriffin dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 15/10/2014, 16h35
  3. Conversion format texte en numerique avec caractere specifique
    Par nubed dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 14/04/2014, 14h38
  4. [XL-2003] Dates en Format texte à convertir en format dates
    Par graphikris dans le forum Excel
    Réponses: 2
    Dernier message: 18/12/2012, 17h42
  5. [MySQL] transformer un format de date venant d'un csv
    Par albinszten dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 26/02/2010, 19h55

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