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 :

.xls vers .csv ou . txt


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2005
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 255
    Par défaut .xls vers .csv ou . txt
    SAlut
    Est ce qu'il est possible depuis un fichier excel de créer un fichier .txt ou .csv ne reprenant qu'une partie de ce fichier excel
    enfait dans mon fichier excel, j'ai une entête et dessous un tableau qui peut étre plus ou moins long et je ne voudrais mettre dans mon fichier .txt ou . csv que les données du tableau
    Quelqu'un aurait-il un code permettant de faire ce genre de manip???
    Merci
    Voila une partie de mon code qui me permet d'enregistrer mon fichier excel entier en .csv (par contre lorsque je veu ouvrir ce .csv , je n'arrive pas à le voir avec des ; il me l'ouvre au format excel j'ai l'impression que ça ne change que l'extension???
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    If Dir("C:\TEMP\", vbDirectory) <> "" Then
            'enregistrement de la FDM à envoyer par FTP
            are = Left(Worksheets(1).Range("L2"), 3)
            fdm1 = "C:\TEMP\" & Range("L2") & ".CSV"
            ThisWorkbook.SaveAs (fdm1)

  2. #2
    Membre Expert
    Avatar de JackOuYA
    Inscrit en
    Juin 2008
    Messages
    1 040
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 1 040
    Par défaut
    Bonjour :

    Tiens voila par exemple comment créer un .csv des lignes sélectionnées :

    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
    '
    ' Fonction d'export en Csv de la sélection
    '
    Private Sub ExporteCSV()
     Dim stF As String
     Dim c As Range
     Dim rL As Range
     Dim iC As Integer 'Nombre de colone déterminé par 1° ligne sélectionné
     Dim i As Integer
     Dim f As Integer
      stF = Application.GetSaveAsFilename
      If stF <> "Faux" Then
        f = FreeFile
        iC = Intersect(Selection.Rows(1), Selection.Cells(1, 1).CurrentRegion).Columns.Count
        Open stF For Output As #f
        For Each rL In Selection.Rows
          For i = 1 To iC
            Print #f, rL.Cells(1, i) & ";";
          Next
          Print #f, ""
        Next
        Close #f
      End If
    End Sub

  3. #3
    Membre confirmé
    Inscrit en
    Septembre 2005
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 255
    Par défaut
    merci pour ton code qui devrait me faire avancer
    pour les colonnes il faut toutes les compter sans tenir compte des cellules fusionnées????
    En fait il faut que je cré un fichier csv dans lequel j'envoie les données des cellules sélectionnées
    mon code ne fait qu'enregistrer xls en csv il n'est donc plus valable??
    PUpuis-je activer ta fonction en cliquant sur un bouton et en plus je voudrais enregistrer le .csv créé avec ce nom:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    are = Left(Worksheets(1).Range("L2"), 3)
             fdm1 = "C:\TEMP\" & Range("L2") & ".CSV"
    Excuses mais je ne suis pas trés fort ...

  4. #4
    Membre confirmé
    Inscrit en
    Septembre 2005
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 255
    Par défaut
    je n'arrive pas à modifier ton code pour ne sélectionner qu'une plage de cellules
    y-aurait-il quelqu'un qui pourrait m'aider?
    MERCI

  5. #5
    Membre Expert
    Avatar de JackOuYA
    Inscrit en
    Juin 2008
    Messages
    1 040
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 1 040
    Par défaut
    Bonsoir,

    le code précédent fonctionne avec une selection de lignes..

    pour une selection d'une plage quelconque:
    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
    Private Sub ExporteCSV()
     Dim stF As String
     Dim c As Range
     Dim rL As Range
     Dim f As Integer
      stF = Application.GetSaveAsFilename
      If stF <> "Faux" Then
        f = FreeFile
        Open stF For Output As #f
        For Each rL In Selection.Rows
          For Each c In rL.Cells
            Print #f, c & ";";
          Next
          Print #f, ""
        Next
        Close #f
      End If
    End Sub

  6. #6
    Membre confirmé
    Inscrit en
    Septembre 2005
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 255
    Par défaut
    Excelent
    j'ai mis ton code sous un bouton ç afonctionne du tonnerre
    mais, j'aimerai ne pas sélectionner manuellement,
    en fait je voudrait lui prédéfinir une plage de cellules (de A17 à O78 mon soucis c'est que cela part toujours de A16 mais 78 peut varier )
    en cliquant sur le bouton cela crée le fichier .csv sans demander ou je l'enregistre,( je défini le dossier temporaire) et ensuite moi j'ai le code pour pousser ce fichier dans mon ftp
    Tout cela en transparence
    excuses moi mais j'en profite tu as l'air d'avoir les compétences pour m'aider
    Merci encore

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

Discussions similaires

  1. [SSIS] [2K5] Converstion xls vers csv
    Par jeud84 dans le forum SSIS
    Réponses: 1
    Dernier message: 26/05/2010, 15h39
  2. [XL-2003] Copier de données d'un fichier xls vers csv
    Par gandalf20000000 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 24/09/2009, 15h20
  3. [PHP 5.2] Conversion xls en csv ou txt
    Par Delors dans le forum Langage
    Réponses: 1
    Dernier message: 13/07/2009, 11h52
  4. [Excel] De xls vers csv sans objet COM (php4 sous linux)
    Par AntaresJon dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 26/02/2009, 17h13
  5. Exporter fichier XLS vers CSV
    Par arnaud_verlaine dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 10/09/2007, 17h47

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