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 :

Remplacer Tabulation par Rien


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2012
    Messages : 127
    Par défaut Remplacer Tabulation par Rien
    Bonjour à tous !

    Je vous présente mon problème.

    J'ai un fichier .sbt qui peut s'ouvir avec un blocnote.
    Dans ce fichier j'ai récupéré le code pour le mettre dans un fichier Excel et le modifier à la guise de l'utilisateur en fonction des paramètres.
    Donc j'ai fais un petit programme VBA permettant de prendre ces paramètres à l'ouverture du fichier Excel, et changer le code en fonction des ces paramètres.

    Le fichier Excel crée alors un fichier .txt dans un répertoire prédéfinie.

    Tout ceci fonctionne.

    Le soucis est que le code doit être identique ( à par les paramètres changés biensur ) mais Excel pour je ne sais quelle raison, m'ajoute plein d'espace et de tabulation.

    Alors, mon logiciel censé lire ce fichier ne l'ouvre pas et me fait une erreur.

    Je cherche à supprimer les Tabulations et les Espaces, comment procéder ?

    J'ai trouver ce post mais le code est assez complexe et je ne sais pas si les caractères espaces et tabulations peuvent être remplacer de cette façon.
    http://www.developpez.net/forums/d45...t-fichier-txt/

    Je met en pièce jointe mon fichier Excel( Générateur de PLC ), mon fichier créé ( PLC_Ratio300 ) et le fichier type désiré ( Prog_CCW ).

    Merci d'avance !
    Fichiers attachés Fichiers attachés

  2. #2
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 85
    Par défaut
    Bonjour à toi,

    Pour ça, insère ton fichier dans une variable de type string.

    Ensuite il te suffit de corriger le caractère que tu veux.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim str as String
    'stockage de ton fichier dans str
    str = Replace(str, Chr(9),"") 'tabulation par rien
    str = Replace(str, " ", "") 'espace par rien
    En espérant que ça te sera utile,

    Cdlt

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2012
    Messages : 127
    Par défaut
    Bonjour brownthefou,

    Malheureusement ce code ne fonctionne pas, je l'ai bien incorporé à mon code VBA mais les tabulations sont toujours là.

    Petite chose dont je viens de me rendre compte également c'est qu'il faut que je supprime toutes les tabulations, mais les espaces ne doivent être supprimer que sur les 4 premiers lignes.

    Dure dure :/ !

    Merci pour votre rapide réponse Brownthefou.

    Je compare les 2 fichiers, j'ai supprimer les tabulations via word et j'ai supprimer les espaces au début, et pourtant, mon logiciel ne veut toujours pas le lire, et pourtant je ne vois aucune différence entre les 2 fichiers a par les paramètres modifiés qui sont correcte.

    C'est un véritable casse-tête.

  4. #4
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 85
    Par défaut
    Citation Envoyé par Etudiant57 Voir le message
    Petite chose dont je viens de me rendre compte également c'est qu'il faut que je supprime toutes les tabulations, mais les espaces ne doivent être supprimer que sur les 4 premiers lignes.
    Rebonjour Etudiant,
    Je vais essayer de te taper un petit code vite fait mais je ne te promet rien.

    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
        Dim oFSO As scripting.FileSystemObject
        Dim oTxt As scripting.TextStream
        Dim str As String
        Dim str_finale As String
        Dim i As Long
        Set oFSO = New scripting.FileSystemObject
        Fichier = Application.GetOpenFilename("All Files (*), *")
        Set oTxt = oFSO.OpenTextFile(Fichier, ForReading)
        Do Until oTxt.AtEndOfStream
            If (i < 4) Then
                str = oTxt.ReadLine
                str = Replace(str, " ", "")
                str_finale = str_finale & str & vbCrLf
                i = i + 1
            Else
                str = oTxt.ReadLine
                str_finale = str_finale & str & vbCrLf
            End If
        Loop
        str_finale = Replace(str_finale, Chr(9), "")
        Set oTxt = Nothing
        Set oTxt = oFSO.OpenTextFile(DestinationFichier, ForWritting) 'à toi de définir ou tu veux placer ton fichier avec DestinationFicheir l'endroit ou il sera
         oTxt.Write str
         Set oTxt = Nothing
         Set oFSO = Nothing
    (Code tapé rapidos rapidos j'ai pas énormément de temps, je ne te promet pas qu'il n'y a pas d'erreurs...)

    Voila, à adapter à ton code.
    1. N'oublie pas d'intégrer la bibliothèque FileSystemObject
    2. Pour comprendre comment marche cette bibliothèque ou pour toute modification que tu auras à effectuer sur mon code, voici un lien qui te permettra de corriger tes réponses:
    http://warin.developpez.com/access/fichiers/

    En espérant t'avoir aidé,

    Cdlt

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2012
    Messages : 127
    Par défaut
    Merci pour votre réponse.

    Je vais surment passé pour un idiot mais j'essai d'inclure la bibliothèque, ne m'y connaissant pas forcément en VBA j'ai du mal.

    #include ne fonctionne pas, je cherche sur le forum et google mais je ne trouve pas la façon d'inclure une bibliothèque en vba .

  6. #6
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    85
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2012
    Messages : 85
    Par défaut
    Quand tu es dans le BV Editor, tu cliques sur "outils" en haut puis référence et tu sélectionnes la bibliothèque souhaitée, ensuite tu l'ajoutes avec un bouton prévu à cet effet (je crois meme qu'il s'appelle ajouter )

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/05/2011, 10h37
  2. [RegEx] remplacer ../ par rien du tout
    Par php_de_travers dans le forum Langage
    Réponses: 3
    Dernier message: 01/05/2007, 21h24
  3. [Sybase] Remplacer des neant par rien
    Par perlgirl dans le forum Langage SQL
    Réponses: 6
    Dernier message: 21/11/2006, 13h26
  4. [HTML][formulaire] remplacer "Enter" par "tabulation"
    Par anti-conformiste dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 05/11/2006, 21h29
  5. [VBA-E]Remplacement virgules par tabulation dans un fichier texte
    Par Mlezen dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 03/05/2006, 14h03

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