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 :

Sélection de lignes de texte - passage en couleur


Sujet :

VBA Word

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 5
    Points : 6
    Points
    6
    Par défaut Sélection de lignes de texte - passage en couleur
    Bonjour,

    Je dispose d'un fichier de généalogie sous Word, dont voici un extrait
    ...
    0176;SAUNIER, Jean François; 17.6.1681;Réclère
    0177;RIAT, Catherine; ~ 1690;Chenevez
    0178;JOLISSAINT, Pierre Germain; 12.10.1704;Réclère
    0179;SAUNIER, Jeanne Catherine; 14.5.1713;Damvant;JOLISSAINT,
    0180;MACABRÉ, Pierre; 7.6.1693;Damvant
    ...
    Le nom du grand père est précédé d'un nombre pair, le nom de l'épouse est précédé du nombre impair immédiatement supérieur.
    De façon générale tous les nombres sont impairs pour les femmes.

    Un fichier peut être assez long et donc assez fastidieux à lire
    Je voudrait pouvoir lancer une Macro sous Word qui
    - lit chaque ligne
    - impose une écriture rouge pour les lignes où elle trouve un nombre impair (donc une femme)

    Est ce possible simplement ?
    Vous remerciant par avance
    Bonne fin de journée
    Michel

  2. #2
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    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 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Si la structure de ton fichier est toujours la même, c'est assez simple.

    On fait une boucle sur les paragraphes du document.
    On fait un split du texte pour en prendre la première partie.
    On convertit en texte et si le modulo 2 donne 1, on colore la ligne.

    En code, ça peu donner ceci :

    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
     
    Sub colorerEnRouge()
    Dim myTable
    Dim myPar As Paragraph
     
    For Each myPar In ActiveDocument.Paragraphs
     myTable = Split(myPar.Range.Text, ";")
     Debug.Print myTable(0)
     
     
    If CInt(myTable(0)) Mod 2 = 1 Then
       myPar.Range.Font.ColorIndex = wdRed
    End If
    Next myPar
     
     
    End Sub

Discussions similaires

  1. Réponses: 1
    Dernier message: 28/05/2015, 15h25
  2. Réponses: 5
    Dernier message: 23/07/2014, 14h41
  3. Ligne de texte de couleur differente
    Par lagach dans le forum Tkinter
    Réponses: 2
    Dernier message: 21/03/2008, 16h30
  4. Champ texte en deux couleurs de 'font'
    Par zenzen dans le forum Forms
    Réponses: 3
    Dernier message: 13/01/2005, 07h53
  5. Réponses: 2
    Dernier message: 03/12/2004, 09h27

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