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 :

exporter un onglet et l'enregistrer en format csv en mettant en forme les noms des colonnes


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 32
    Points : 22
    Points
    22
    Par défaut exporter un onglet et l'enregistrer en format csv en mettant en forme les noms des colonnes
    Bonjour,

    j'ai un fichier xls qui contient plusieurs onglets. J'aimerai pouvoir créér une macro vba qui permet d'exporter un onglet spécifique de l'enregistrer en format csv avec séparateur ";" et d'enlever les espaces qui sont dans les noms des colonnes. j'aimerai aussi que dans mon nouveau fichier csv que les noms des colonnes soient en première ligne et non en deuxième ligne.

    Mon tableau:
    200
    nom a nom b nom c nom d nom e
    1 2 3 4 5
    6 7 8 9 10
    11 14 17 20 23
    12 15 18 21 24
    13 16 19 22 25

    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
     
    Sub Macro1()
    '
    ' Macro1 Macro
    '
    '
        Sheets("Feuil1").Select
        Application.CutCopyMode = False
        Sheets("Feuil1").Copy
        Rows("1:1").Select
        Selection.Delete Shift:=xlUp
     
        Range(Selection, Selection.End(xlToRight)).Select
        Selection.Replace What:=" ", Replacement:="", LookAt:=xlPart, _
            SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
            ReplaceFormat:=False
        ActiveWorkbook.SaveAs Filename:="C:\Users\toto\Documents\test.csv", _
            FileFormat:=xlCSV, CreateBackup:=False
    End Sub
    est ce que quelqu'un a une idée plus stable.
    Merci.

  2. #2
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 754
    Points : 9 396
    Points
    9 396
    Par défaut
    Bonjour,

    Ci dessous une approche en utilisant Open For Output

    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
    Sub Export(Sh As Worksheet)
     
    Dim i As Long
    Dim c As Integer
    Dim StrLigne As String
     
    Open "c:\test.csv" For Output As #1
     
    For i = 2 To Sh.Range("A" & Rows.Count).Row
        StrLigne = ""
     
        For c = 1 To Sh.Cells(2, Columns.Count).End(xlToLeft).Column
            If StrLigne <> "" Then StrLigne = StrLigne & ";"
            StrLigne = StrLigne & IIf(i = 2, Replace(Sh.Cells(i, c).Value, " ", ""), Sh.Cells(i, c).Value)
        Next c
     
        Print #1, StrLigne
     
    Next i
     
    Close #1
     
    End Sub
    Procédure a appeler comme suit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Export Sheets("feuil1")
    Jérôme

Discussions similaires

  1. Réponses: 1
    Dernier message: 21/03/2015, 14h56
  2. Export vers Excel avec les noms des colonnes
    Par JauB dans le forum AS/400
    Réponses: 7
    Dernier message: 04/02/2011, 09h18
  3. [Toutes versions] Pb d'enregistrement au format CSV
    Par goldenboy10 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 28/08/2009, 11h56
  4. Exportation d'une bd mysql vers un format csv
    Par derric8016 dans le forum Outils
    Réponses: 5
    Dernier message: 13/01/2006, 21h58
  5. [D6][Excel] Comment enregistrer en format csv ?
    Par ShinGaruda dans le forum API, COM et SDKs
    Réponses: 5
    Dernier message: 04/05/2005, 19h59

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