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 :

Macro Excel pour décortiquer un fichier TXT


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Inscrit en
    Février 2008
    Messages
    190
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 190
    Points : 53
    Points
    53
    Par défaut Macro Excel pour décortiquer un fichier TXT
    Bonjour à tous,

    je vous sollicites car j'aurais besoin de faire une Macro dans les plus brefs délais et je n'ai pas les compétences pour...

    Cela reste quand même simple (du moins pour quelqu'un qui connais), il suffirais de cliquer sur un bouton, choisir un fichier TXT.

    Voici la composition :
    A chaque '#################', c'est un nouveau block dans lequel il faut piocher des infos.
    Première ligne (après les dièses), récupérer l'info et la caser dans une cellule.
    Deuxième ligne, idem.
    18° ligne, récupérer le 29° caractère et le 36°. Chacun dans une cellule différente.

    Répéter ces opérations jusqu'à la fin du fichier TXT.

    Je commence bien sur à regarder pour le faire tout seul mais je patoge vu que je ne sais même pas comment choisir un fichier...

    Merci pour votre aide (très) précieuse...

  2. #2
    Membre éprouvé
    Avatar de ouisansdoute
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    931
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 931
    Points : 1 079
    Points
    1 079
    Par défaut
    Bonjour, Pour choisir un fichier
    le codesuivant devrait faire l'affaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fichier = Application.GetOpenFilename("Fichier TXTà traiter , *.txt")
    Pour le découpage de ton fichier, le mieux serait que tu fournisses un exemple de fichier txt.

    En effet, Excel contient un Assistant d'importation mais tu décris un import particulier car toutes les lignes ne sont pas traitées de la même façon alors un exemple aiderait à t'apporter une réponse.

  3. #3
    Membre du Club
    Inscrit en
    Février 2008
    Messages
    190
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 190
    Points : 53
    Points
    53
    Par défaut
    Merci pour ta réponse rapide...
    Voici un exemple :

    #########################################################################
    lun. 15/12/2008
    19:07
    lmutil - Copyright (c) 1989-2005 Macrovision Europe Ltd. and/or Macrovision Corporation. All Rights Reserved.
    Flexible License Manager status on Mon 12/15/2008 19:07

    [Detecting lmgrd processes...]
    License server status: ...
    License file(s) on cuba: ...

    ...: license server UP (MASTER) v10.8
    ...: license server UP v10.8
    ...: license server UP v10.8

    Vendor daemon status (on cuba):

    MSC: UP v10.8

    Users of campus: (Total of 7191 licenses issued; Total of 712 licenses in use)

    "CAMPUS" v2008.1231, vendor: MSC
    floating license

    blablabla

    NOTE: lmstat -i does not give information from the server,
    but only reads the license file. For this reason,
    lmstat -a is recommended instead.

    Feature Version # licenses Expires Vendor
    _______ _______ __________ _______ ______
    CAMPUS 2008.1231 7191 31-dec-2099 MSC
    #########################################################################
    lun. 15/12/2008
    23:07
    lmutil - Copyright (c) 1989-2005 Macrovision Europe Ltd. and/or Macrovision Corporation. All Rights Reserved.
    Flexible License Manager status on Mon 12/15/2008 23:07

    [Detecting lmgrd processes...]
    License server status: ...
    License file(s) on cuba: ...

    ...: license server UP (MASTER) v10.8
    ...: license server UP v10.8
    ...: license server UP v10.8

    Vendor daemon status (on cuba):

    MSC: UP v10.8

    Users of campus: (Total of 7191 licenses issued; Total of 0 licenses in use)

    NOTE: lmstat -i does not give information from the server,
    but only reads the license file. For this reason,
    lmstat -a is recommended instead.

    Feature Version # licenses Expires Vendor
    _______ _______ __________ _______ ______
    CAMPUS 2008.1231 7191 31-dec-2099 MSC

    Donc, ce qu'il me faut comme info :
    la date lun. 15/12/2008
    l'heure 19:07
    Dans des cellules différentes.
    Ensuite, dans cette ligne :
    Users of campus: (Total of 7191 licenses issued; Total of 712 licenses in use)
    Le Nbr de licence inutilisé et le nombre de licence utilisé.
    Là aussi dans des cellules différentes.

    Merci de ton aide

  4. #4
    Membre éprouvé
    Avatar de ouisansdoute
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    931
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 931
    Points : 1 079
    Points
    1 079
    Par défaut
    L'import d'un fichier txt se fait dans Excel avec des fichiers contenant un enregistrement par ligne ce qui n'est pas le cas du tien. As-tu la possibilité de changer le format du fichier txt pour qu'il réponde à ce critère avec des séparateurs de champs ?
    regarde cette discussion
    http://www.developpez.net/forums/d63...ntenant-cr-lf/

  5. #5
    Membre du Club
    Inscrit en
    Février 2008
    Messages
    190
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 190
    Points : 53
    Points
    53
    Par défaut
    Si j'ai bien suivis, il faudrait virer tous les sauts de lignes, c'est ça ?
    Du moins avoir les lignes qui s'enchaine, sans avoir de 'blanc'...

    On peut retoucher mon fichier en tout cas.

  6. #6
    Membre éprouvé
    Avatar de ouisansdoute
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    931
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 931
    Points : 1 079
    Points
    1 079
    Par défaut
    Pour pouvoir travailler ton fichier sous Excel, il faudrait que chaque ligne commence par ######### qui est signe du passage à un nouvel enregistrement. Ensuite que chaque champ soit séparé par un séparateur non utilisé dans le reste de ton fichier.

    Il faut aussi que tous les enregistrements aient le même nombre de champs, positionnés aux même endroits.

    Mais il y a peut-être mieux.

  7. #7
    Membre du Club
    Inscrit en
    Février 2008
    Messages
    190
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 190
    Points : 53
    Points
    53
    Par défaut
    Pour CHAQUE ligne ???
    C'est possible à automatiser avec Word ?

  8. #8
    Membre éprouvé
    Avatar de ouisansdoute
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    931
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 931
    Points : 1 079
    Points
    1 079
    Par défaut
    Je pense que oui.

  9. #9
    Membre du Club
    Inscrit en
    Février 2008
    Messages
    190
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 190
    Points : 53
    Points
    53
    Par défaut
    Là, je suis en train de jeter un œil.
    Mais admettons que ce ne soit pas possible, virer les sauts de ligne, ca resterais impossible à faire ?

    EDIT :
    Est-ce qu'il ne serais pas possible avec un script Excel de récupérer et d'isoler les deux premières lignes ET la ligne qui commence par 'Users of campus' pour les mettre ailleurs (un autre fichier TXT ?) pour ensuite faire le traitement de manières plus simple ?

  10. #10
    Membre éprouvé
    Avatar de ouisansdoute
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    931
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 931
    Points : 1 079
    Points
    1 079
    Par défaut
    Dans la discussion à laquelle je faisais référence kiki29 proposait une macro Excel pour traiter le fichier txt.

    Peux-tu en pièce jointe mettre un de tes fichiers txt pour qu'on puisse faire des essais et adapter ?

  11. #11
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274
    Par défaut
    Salut, sans fichier texte réel pas facile, donc à toi de poursuivre si besoin est

Discussions similaires

  1. Réponses: 0
    Dernier message: 17/11/2012, 17h51
  2. Réponses: 2
    Dernier message: 06/01/2011, 16h35
  3. Macro Excel : ouverture d'un fichier .txt
    Par johannj dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 22/12/2008, 10h28
  4. Réponses: 5
    Dernier message: 05/12/2008, 15h23
  5. Réponses: 1
    Dernier message: 15/09/2006, 16h23

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