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

VBA Word Discussion :

Manipulation de texte, retour chariot et saut de ligne


Sujet :

VBA Word

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Manipulation de texte, retour chariot et saut de ligne
    Bonjour,

    Je vous expose ma situation : je dois traiter des documents divers et variés contenant des données initialement en vrac. Ces données concernent une liste de personnes avec leur coordonnées. Ces coordonées sont peu lisible au départ (nom et prénom dans une police illisible, nombreux sauts de lignes etc.)

    Mon but est de mettre en page les données. Ainsi, chaque page doit concerner les coordonées d'une seule personne. Il y a autant de pages que de personnes.

    Pour cela je dois :
    1) Sélectionner tout le texte et le mettre en Arial 10
    2) S'il y a 3 ou 4 Retour chariot qui se suivent, je dois les remplacer par un seul retour chariot
    3)Dès que je trouve le mot "Nom", ce qui correspond au début des coordonées d'une personne, je dois sauter de page afin que ses données soient sur une unique page.

    Je ne sais pas comment effectuer le 2ème point car je souhaiterais utiliser la méthode "Replacement" mais je ne sais pas quel est le symbole d'un retour chariot en VBA.

    Je ne sais pas non plus comment effectuer le 3ème point. Dois utiliser "Selection"? Quelle est la méthode pour insérer après un mot queconque? J'ai trouvé la méthode "Insertbreak" mais je ne sais pas comment implémenter ce que je souhaite.

    Pour information, j'ai fait mes recherches sur l'aide de Microsoft Word -> Visual Basic, lorsqu'on édite une macro.

    Pouvez vous m'aider? Merci!

  2. #2
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Toujours personne pour m'aider?

  3. #3
    Membre régulier
    Inscrit en
    Février 2007
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Février 2007
    Messages : 71
    Points : 76
    Points
    76
    Par défaut
    Salut, ^^

    le retour chariot en vba c'est Chr(13)
    Il suffirait de parcourir ligne par ligne le document et de vérifier si plusieurs retour chariot se suivent

    sinon pour le 3eme point, tu peux utiliser

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Selection.Range.Text = "Ton texte"
    ou

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Selection.TypeText "Ton texte"
    dans les 2 cas, ça t'insère ton texte au niveau de la sélection.

  4. #4
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Déjà pour sélectionner tout le texte et le mettre en Arial 10pts, tu peux enregistrer une macro. Pour sélectionner tout, fais Ctrl + A.

    Je regarde un peu pour la suite.

    Tu peux nous donner quelques données type pour faire des tests?

  5. #5
    Nouveau Candidat au Club
    Inscrit en
    Septembre 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Eh bien voici un extrait d'un document : A chaque "Poste de gestion", je dois sauter de page pour qu'il y ait une facture client par page. De plus s'il y a trop de retour chariot (plus de 2) je dois les remplacer par un seul retour chariot. Voici donc l'extrait, c'est un document tout bete txt :
    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
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
     
    Poste de gestion : A
     
           MARTIN                                 30/10/1924             107
           JUSTIN                               A VILLENEUVE LE R
           MARTINE             ENTREE:21/04/2006 SORTIE:15/05/2006        2007
                              MODE SORTIE SO SORTIE DIRECTE          REEMISSION 06
           400 CHEMIN ST DENIS                                      1051039 000269
           LE FLAMANT ROSE                           GIRARD
           06115    LE CANNET                        DENISE               BEN: 03
           FR  FRANCE                              03017110         2210288669206 73
                                                                    RISQ28 MT10
     
     
     
     
    280406 FORFAIT JOURNALIE  50       17    1500         100       25500 H7721
    150506 FORFAIT DERNIER J  FJDS      1    1500         100        1500 H7721
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
                                      TOTAL DU EN EUROS      *******27000 4111
     
     
     
                                                             *******27000
     
     
     
    Poste de gestion : B
     
           MARTIN                                 30/10/1924             107
           JUSTIN                               A VILLENEUVE LE R
           MARTINE             ENTREE:21/04/2006 SORTIE:15/05/2006        2007
                              MODE SORTIE SO SORTIE DIRECTE          REEMISSION 06
           400 CHEMIN ST DENIS                                      1051039 000269
           LE FLAMANT ROSE                           GIRARD
           06115    LE CANNET                        DENISE               BEN: 03
           FR  FRANCE                              03017110         2210288669206 73
                                                                    RISQ28 MT10
     
     
     
     
    280406 FORFAIT JOURNALIE  50       17    1500         100       25500 H7721
    150506 FORFAIT DERNIER J  FJDS      1    1500         100        1500 H7721
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
                                      TOTAL DU EN EUROS      *******27000 4111
     
     
     
                                                             *******27000
    Vous voyez il y a deux postes de gestion A, et B, je dois ainsi separer le texte en deux et le mettre sur une page pour chaque poste.

    Merci pour vos réponses!!!!

  6. #6
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

    Informations professionnelles :
    Activité : Contrôleur d'industrie
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 21 086
    Points : 42 925
    Points
    42 925
    Par défaut
    FAQ

    Les retours de charriot inutiles sont des lignes vides, et la dans la FAQ, il y a un code qui permet de supprimer les lignes vide d'un document.
    Il est en lien.

Discussions similaires

  1. Enlever "retour chariot" sans "saut de ligne"
    Par kevinklein dans le forum C++
    Réponses: 11
    Dernier message: 11/06/2009, 11h27
  2. fgets sans retour chariot et saut de ligne
    Par zugolin dans le forum Langage
    Réponses: 5
    Dernier message: 10/05/2009, 15h02
  3. [Text]retour chariot pas pris en compte
    Par snoop dans le forum SWT/JFace
    Réponses: 1
    Dernier message: 16/11/2006, 09h18
  4. [XSLT][->texte] les fameux retour chariot et a la ligne
    Par SOPRA-Eherve dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 26/06/2006, 23h14
  5. [XSL] <xsl:text>retour chariot</xsl:text>
    Par luta dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 07/03/2006, 16h27

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