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 : .xls to .txt sans espace ni tabulation


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 9
    Points : 4
    Points
    4
    Par défaut Macro : .xls to .txt sans espace ni tabulation
    Bonjour,

    Je dispose d'une feuille Excel composée de nombreuses lignes et colonnes.
    J'aimerai exporter cette feuille vers un fichier texte .txt tout simple où l'ensemble de ces données ne serait séparé par aucun espace ni tabulation.

    En effet, on peut enregistrer une feuille Excel au format txt directement à partir d'Excel, mais cela génère des tabulations entre les colonnes.

    Merci d'avance

  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
    Tu peux utiliser open qui te permet d'exporter au format que tu désire mais en construisant toi même la structure

    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
     
     
    sub exportefichier()
     
    Dim i As Integer 'lignes
    Dim j As Integer 'colonnes
    Dim strLigne As String
     
    Open "c:\fichier.txt" For Output As #1
     
     
    For i = 1 To 11
     
        strLigne = ""
     
        For j = 1 To 3
     
            strLigne = strLigne & Cells(i, j).Value
     
     
        Next j
     
        Print #1, strLigne
     
    Next i
     
    Close #1
     
    end sub
    par contre, juste par curiosité, a quoi peut bien servir un fichier si toutes les données sont concatenées les unes aux autres?
    Jérôme

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    Pardon, je ne t'avais pas répondu.

    Le fais que les données soient concaténées me sert pour la création d'une trame pour un petit protocole d'échange de donnée.
    Le fait de remplir cela sous Excel me permet de le faire proprement en imposant des contraintes.
    Ensuite, je peux transcoder cela au format ".txt".

    Maintenant que je viens de terminer cette macro qui s'adapte à mon tableau en effectuant au préalable une vérification de mes champs avant la conversion, je vais créer une macro inverse.


    Merci de ton aide en tous cas.
    Bon courage à tous.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 44
    Points : 50
    Points
    50
    Par défaut
    Bonjour,

    Je suis plutôt d' accord avec jfontaine, car je saisis pas bien comment tu vas t'y retrouver à l'arrivée, si tu concatènes tout;....à moins de typer fortement tes champs(Colonnes aparamment)

    Bon courage

    A+

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 9
    Points : 4
    Points
    4
    Par défaut
    C'est exactement cela, je type mes champs et je peux donc contrôler le type de donnée et la taille de celle-ci.
    En fait, j'ai une cellule au dessus qui me permet d'être une consigne à l'aide d'un caractère "/" après cela je peux indiquer la taille et le type.

    Consigne : /06N/ Titre
    Cellule : 15641

    La cellule contient 5 caractère numérique, je complète donc automatiquement à gauche par un zéro pour arriver à ma consigne.
    Si il y avait eu une erreur, on peut le signaler à l'utilisateur.
    C'est le principe.
    La macro est développée, si vous voulez voir, envoyez un mp.

    Je rappelle que l'usage est dans un protocole de transmission de données.

    A+

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2007
    Messages : 44
    Points : 50
    Points
    50
    Par défaut
    Ouais,

    En fait, tu fait du TLV (Mot Consacré en Télécoms-je connais,j'ai baigné là-dedans)

    C'est à dire TypeLongueurValeur

    Alors, où est le problème ?

    A+

Discussions similaires

  1. XLS en TXT sans séparateur
    Par julio44 dans le forum Excel
    Réponses: 14
    Dernier message: 14/04/2023, 09h55
  2. Transformer fichier txt sans ma macro excel
    Par plm222 dans le forum Excel
    Réponses: 0
    Dernier message: 02/02/2013, 18h11
  3. lecture fichier plat TXT sans espace dans excel
    Par julio44 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 29/06/2011, 18h31
  4. Exporter xls en txt (sans passer par enregistrer au format *.txt)
    Par Danieldu54 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 12/02/2011, 18h46
  5. Ecrire dans un fichier txt sans espace avant la 1ère valeur
    Par fatma hamdi dans le forum Fortran
    Réponses: 4
    Dernier message: 17/04/2008, 13h46

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