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 :

Possibilité de compilation de fichiers texte avec une macro


Sujet :

Macros et VBA Excel

  1. #21
    Nouveau membre du Club
    Inscrit en
    Août 2008
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 141
    Points : 35
    Points
    35
    Par défaut
    oui tu peut souligner ce que tu veut, au lieu de me prendre limite pour un imbecile apprend aussi a lire : JE N AI PAS ACCES A L AIDE EN LIGNE., je viens ici pour demander des conseils je débute, si je savais tout je ne serais pas en train de demander de l'aide. je fais des recherches depuis plus d'une semaine mais a part ce forum je n'ai personne pour m'aider sachant que je n'ai pas l'aide en ligne.

    Si quelqu'un peut m'aider.
    Merci

  2. #22
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Ma dernière contribution :
    Si tes fichiers s'ouvrent avec NotePad, ce sont des txt.
    Comme leur extension est différente, remplace
    Nomfich = Dir(chemin & "\*.txt")
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Nomfich = Dir(chemin & "\*.dta")
    Et adapte le chemin dans la sub Appel()
    Mais surtout essaie de comprendre le code qu'on te donne qui que ce soit qui te le donne.
    Maintenant la solution de decondelite en est une autre.
    Bonne soirée

  3. #23
    Nouveau membre du Club
    Inscrit en
    Août 2008
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 141
    Points : 35
    Points
    35
    Par défaut
    Merci Ouskel'n'or

    Le programme bloque sur une ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.Copy After:=ThisWorkbook.Worksheets(ThisWorkbook.Sheets.Count)

  4. #24
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 753
    Points : 855
    Points
    855
    Par défaut
    Citation Envoyé par Tinien Voir le message
    oui tu peut souligner ce que tu veut, au lieu de me prendre limite pour un imbecile apprend aussi a lire : JE N AI PAS ACCES A L AIDE EN LIGNE., je viens ici pour demander des conseils je débute, si je savais tout je ne serais pas en train de demander de l'aide. je fais des recherches depuis plus d'une semaine mais a part ce forum je n'ai personne pour m'aider sachant que je n'ai pas l'aide en ligne.

    Si quelqu'un peut m'aider.
    Merci
    Et les FAQ et les tutos t'en fais quoi? En plus c'est mieux expliqué que l'aide en ligne.
    Et pas la peine de m'engueuler: si je t'ai dit que l'aide est sur le PC c'est parce que certains ne savent même pas ce que c'est que l'aide en ligne.

    Donc bref, puisque t'as pas accès à l'aide en ligne, t'as encore beaucoup de support sur le site.

    @ouskel'n'or:
    A quelle autre manière de faire pensais-tu? Là ses fichiers sont inexploitables par Excel (du moins je le suppose) car ils n'ont pas de séparateur bien défini (il y a des espaces ou je ne sais quoi d'autre en plus des point-virgule), et la seule autre manière que je connais c'est utiliser automation sur par exemple word ou autre.

  5. #25
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Peut-être un pb de temps d'exécution, alors ajoute un DoEvents là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Public Function Lister(chemin As String)
    Dim Nomfich As String
        Nomfich = Dir(chemin & "\*.txt")
        Do While Nomfich <> ""
            Workbooks.OpenText Filename:=chemin & Nomfich, Origin:=xlWindows, _
            StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlNone, _
            ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False, Comma:=True
            DoEvents
            ActiveSheet.Copy After:=ThisWorkbook.Worksheets(ThisWorkbook.Sheets.Count)
            DoEvents
            Nomfich = Dir()
        Loop
    End Function
    Mais pour comprendre, consulte l'aide en ligne
    Blague dans le coin, tu ferais bien d'exiger d'en avoir une. On ne peut pas faire de VBA sans aide en ligne (à moins de passer sa vie en recherche sur les forums ou de demander aux copains de faire son boulot)
    Bonne soirée

  6. #26
    Membre averti
    Profil pro
    Inscrit en
    Février 2006
    Messages
    288
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 288
    Points : 364
    Points
    364
    Par défaut
    Bon sans aide en ligne c'est dur, alors pour un débutant...

    J'ai retrouvé une macro qui traitait plusieurs fichiers CSV, je l'ai un poil adaptée mais il reste peut-être des incohérences.

    Par contre elle met les lignes des divers fichiers à la suite dans la même feuille alors que le code d'Ouskelnor met un fichier par onglet. A voir donc selon ton besoin.

    Attention à ne pas avoir la variable chemin qui se termine par "\" et le filtre de la commande Dir qui commence par "\" ! Sinon ça fait genre C:\Temp\\*.dta

    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
    26
    27
    28
    29
    30
    31
    32
    33
     
    Sub traitement()
     
    Dim tabString() As String
    Dim chemin As String, nomFich As String, myString As String
    Dim i As Long, a As Integer
     
    chemin = "C:\Temp\"
     
    nomFich = Dir(chemin & "*.dta") 'liste les *.dta
     
    'importation des données :
    i = 1
     
    Do While nomFich <> ""
        Open chemin & nomFich For Input As #1 'on ouvre le fichier
        Do While Not EOF(1) 'on boucle dessus jusqu'à sa fin
     
            Line Input #1, myString
            myString = Replace(myString, " ", "") 'sert à virer les espaces inutiles vu que t'as que des nombres
     
            'on ventile en x champs selon les séparateurs ";" et on met dans un tableau
            tabString = Split(myString, ";")
     
            For a = 0 To UBound(tabString)
                Cells(i, a + 1) = tabString(a)
            Next a
            i = i + 1
        Loop
        Close #1
        nomFich = Dir() 'passe au fichier suivant
    Loop
    End Sub

  7. #27
    Nouveau membre du Club
    Inscrit en
    Août 2008
    Messages
    141
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 141
    Points : 35
    Points
    35
    Par défaut
    Merci a tout le monde pour votre aide ,et a neupont sa fonctionne super la macro.
    J'ai demandé ce qu'il fallait pour avoir l'aide en ligne mais étant sur un environment bloquer dirigé par la Hollande pas facile d'avoir ce que l'on veut.
    Merci encore

  8. #28
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Citation Envoyé par ouskel'n'or Voir le message
    On ne peut pas faire de VBA sans aide en ligne
    si si c'est possible
    .

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Renommer un fichier texte avec une chaine extraite de ce fichier
    Par sebariaz dans le forum Scripts/Batch
    Réponses: 0
    Dernier message: 28/03/2013, 20h18
  2. copier contenu d'un fichier text via une macro
    Par bassm dans le forum VBA Word
    Réponses: 9
    Dernier message: 11/12/2008, 11h13
  3. Réponses: 3
    Dernier message: 23/09/2006, 15h19
  4. [VBA-E] Exporter un fichier Web avec une macro
    Par Wilgard dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 22/05/2006, 12h25
  5. Comment parcourir un fichier texte avec une boucle ?
    Par kikica dans le forum Langage
    Réponses: 2
    Dernier message: 15/11/2005, 17h13

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