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 :

et probleme de CSV


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 11
    Par défaut et probleme de CSV
    Bonjour,

    J'essai d'enregistrer une fichier en CSV via une macro qui réalise une série d'action sur un fichier excel de 500 000 ligne.

    Dans les paramètres régionaux le caractère de séparation est bien le ; mais quand j'enregistre avec la macro j'ai automatiquement des virgules. quand j'enregistre en manuel j'ai bien les ;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    ActiveWorkbook.Sheets("test").Copy
    ActiveSheet.SaveAs Filename:="C:\Users\blabla\Documents\referentielProducteurs-" + date_du_jour + "-01.csv", FileFormat:=xlCSVMSDOS, CreateBackup:=True, Local:=True
    ActiveSheet.Parent.Close savechanges:=False
    J'ai donc utilisé un autre bout de code pour avoir des ";" là je n'ai pas de problème au niveau des points virgules par contre j'ai des champs code postaux que je passe sur 5 chiffre avec la fonction NumberFormat = "00000" quand je l'enregistre avec la première méthode pas de problème mais avec la deuxième ça ne tiens pas compte du NumberFormat

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Const strSéparateur As String = ";"
    f = FreeFile
     
    Tableau = ActiveWorkbook.Sheets("test").UsedRange
    Open "C:\Users\blabla\Documents\referentielProducteurs-" + date_du_jour + "-03.csv" For Output As #f
    For i = LBound(Tableau, 1) To UBound(Tableau, 1)
        ligne = Tableau(i, LBound(Tableau, 2))
        For j = LBound(Tableau, 2) + 1 To UBound(Tableau, 2)
            ligne = ligne & strSéparateur & Tableau(i, j)
        Next
        Print #f, ligne
    Next
    Close f
    que faire?

  2. #2
    Membre confirmé
    Homme Profil pro
    Developpeur
    Inscrit en
    Novembre 2011
    Messages
    196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Developpeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2011
    Messages : 196
    Par défaut sdispro
    Salut,

    si tu gardes la secondes méthodes et que ce sont les Codes postaux qui bloquent, implémente ta macro avec la fonction "text"

    (cela te converti un nombre en texte, mais reste un nombre)

    A+

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 11
    Par défaut
    Merci de la réponse,

    Mais à la base dans mon fichier excel les code postaux de l'ain sont sous ce format 1100 au lieu de 01100

    j'utilise donc NumberFormat = "00000".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveWorkbook.Sheets("test").Columns("C:C").NumberFormat = "00000"
    si je met ensuite NumberFormat = "@" pour les passer en text le 0 disparait à nouveau

Discussions similaires

  1. [MySQL] Probleme exportation csv
    Par BalouCDL dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 07/03/2010, 12h03
  2. [MySQL] Probleme export csv
    Par lordlifen dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 01/10/2009, 12h58
  3. [VS2005] Probleme Encodage CSV pour Excel
    Par belfaigore dans le forum VB.NET
    Réponses: 1
    Dernier message: 24/05/2007, 18h36
  4. probleme exporter csv
    Par kems2000 dans le forum Requêtes
    Réponses: 1
    Dernier message: 26/12/2006, 07h40
  5. Réponses: 9
    Dernier message: 31/01/2006, 23h42

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