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 :

Exploiter fichier txt


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Décembre 2008
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 16
    Par défaut Exploiter fichier txt
    Bonjour,

    Je dois rendre exploitable sur excel une extraction au format txt.
    Cette extraction ressemble à ça :

    cf capture ci joint

    Donc au final des colonnes et une ligne qui s'étend sur 3 ligne !
    Par exemple la catégorie s'étend comme ceci :
    PIECE
    DETACHEE-
    NEUVE

    Je dois donc trouver le moyen :
    - Cibler un lot de trois lignes
    - Le diviser en cellule
    - Concaténer le tout

    Ma démarche est elle bonne ?

    Une piste pour m'éclairer !
    Inutile de préciser qu'il s'agit de mon premier travail sous VBA excel... si vous pouvez détailler vos réponses cela m'aiderai énormément !

    Bien cordialement,

    Symph

  2. #2
    Membre chevronné
    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
    Par défaut
    Bonjour,
    tu devrais mettre ton fichier txt (ou au moins un bout) en pièce jointe, en effet il est important de savoir quel est le séparateur entre les champs et comment sont codés les retours ligne

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    159
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 159
    Par défaut
    Bonjour,

    tu as essayer les macros enregistrées : Outils->Macros->NouvelleMacro ??

    Cdt

  4. #4
    Membre averti
    Inscrit en
    Décembre 2008
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 16
    Par défaut
    J'ai ajouté une partie du fichier à rendez exploitable sous excel !

    J'ai essayé les macros enregistré mais le problème est la configuration du fichier !
    Comme je l'ai dit, il me faut concaténer les 3 lignes en une : la catégorie est sur 3 lignes, le nom sur deux... etc.

    Tout cela sans parler de l'entete de chaque page les une aà la suite des autres !

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    153
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 153
    Par défaut
    Bonjour,

    Peux t'on savoir comment tu as généré ce fichier texte?
    Le plus simple serait en effet d'avoir les informations sur une ligne et de passer par un import paramétré de tes données auxquels tu feras reference dans ton code vba.

  6. #6
    Membre averti
    Inscrit en
    Décembre 2008
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Décembre 2008
    Messages : 16
    Par défaut
    Impossible, ce fichier txt provient d'une extraction d'un ERP Oracle auquel je n'ai pas accès.
    Je dois me contenter de traiter ces informations à partir du fichier txt.

    J'ai commencé à faire cela :


    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
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    Open f For Input As 1
    y = 1
    While Not EOF(1)
     
        Line Input #1, a
        x = 1
        test = Len(a)
        If Mid(a, 1, 1) = "I" Then
                   Cells(y, 1) = Trim(Mid(a, 1, 1))
                   Cells(y, 2) = Trim(Mid(a, 4, 10))
                   Cells(y, 3) = Trim(Mid(a, 14, 10))
                   Cells(y, 4) = Trim(Mid(a, 24, 7))
                   Cells(y, 5) = Trim(Mid(a, 31, 3))
                   Cells(y, 6) = Trim(Mid(a, 35, 8))
                   Cells(y, 7) = Trim(Mid(a, 43, 10))
                   Cells(y, 8) = Trim(Mid(a, 53, 13))
                   Cells(y, 9) = Trim(Mid(a, 77, 3))
                   Cells(y, 10) = Trim(Mid(a, 84, 3))
                   Cells(y, 11) = Trim(Mid(a, 92, 3))
                   Cells(y, 12) = Trim(Mid(a, 99, 3))
                   Cells(y, 13) = Trim(Mid(a, 106, 3))
                   Cells(y, 14) = Trim(Mid(a, 109, 10))
                   Cells(y, 15) = Trim(Mid(a, 119, 15))
     
     
            cpt = 0
        Else 
            cpt = cpt + 1
            x1 = Trim(Mid(a, 4, 10))
            Cells(y - cpt, 2) = Cells(y - cpt, 2) & x1
            x2 = Trim(Mid(a, 14, 10))
            Cells(y - cpt, 3) = Cells(y - cpt, 3) & " " & x2
            x3 = Trim(Mid(a, 35, 8))
            Cells(y - cpt, 6) = Cells(y - cpt, 6) & x3
            x4 = Trim(Mid(a, 43, 10))
            Cells(y - cpt, 7) = Cells(y - cpt, 7) & " " & x4
            x5 = Trim(Mid(a, 53, 13))
            Cells(y - cpt, 8) = Cells(y - cpt, 8) & " " & x5
        End If
     
          y = y + 1
     
     
     Wend
    dans la première parti je traite les ligne de données et les inclus dans de nouvelles cellule. dans la seconde parti je concatene le reste de l'information...

    Il me faut maintenant traiter les entete de page qui commencent par : "-----------------------"

Discussions similaires

  1. Exploiter fichier txt avec matlab
    Par wajdi ben hssine dans le forum MATLAB
    Réponses: 1
    Dernier message: 20/12/2010, 18h13
  2. Génération de fichier .txt exploitable
    Par TekFanatiX dans le forum Langage
    Réponses: 5
    Dernier message: 15/06/2009, 14h57
  3. Lire un fichier .txt et exploiter son contenu
    Par berberat dans le forum MATLAB
    Réponses: 5
    Dernier message: 07/08/2007, 11h38
  4. Exploiter un fichier TXT
    Par Djohn dans le forum Excel
    Réponses: 1
    Dernier message: 05/07/2007, 14h33
  5. [Débutant] Importation et exploitation de valeurs provenant d'un fichier txt
    Par jenfree dans le forum MATLAB
    Réponses: 4
    Dernier message: 13/04/2007, 19h51

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