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 :

Excel VBA - Mettre des mots en rouge dans des cellules


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Excel VBA - Mettre des mots en rouge dans des cellules
    Bonjour à tous,
    Je suis embété car je ne sais pas vraiment programmer des macros et j'ai une tache qui est répétitive et qui je suis sur pourrait être automatisée.
    Pour faire simple : Je travaille sur un glossaire. J'ai deux colonnes A et B, dans la colonne A j'ai des mots et dans la colonne B j'ai leur définition. J'aimerais pouvoir identifier les mots dans les cellules de la colonnes B qui ont déja une définition dans mon glossaire (colonne A).
    Petit exemple concret :
    Colonne A Colonne B
    Arbre Plante qui contient des branches et des feuilles...
    Feuille Partie d'une arbre. Se trouvent au bout des branches....
    Branche Fait partie d'une arbre. Au bout se trouve des feuilles....
    Dans ce cas la macro devrait m'identifier les mots arbre, branche et feuille dans chacune des définitions de la colonne B et mettre ces mots en rouge.
    Est-ce possible de programmer ca ?
    Merci pour votre aide,
    Je vous souhaite une bonne journée !

  2. #2
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 203
    Points : 14 354
    Points
    14 354
    Par défaut
    Bonjour,

    Mets la macro suivante dans un module standard. Il y a juste les "s" qui sont pas coloriés :

    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
    Sub test()
        Dim C As Range, X As Range, ResAdr As String, Ctr as Integer
        For Each C In Range("A1", Cells(Rows.Count, 1).End(xlUp))
            Set X = [B:B].Find(C.Value, , , xlPart)
            If Not X Is Nothing Then
                ResAdr = X.Address
                Do
                    ctr = 1
                    Do
                        ctr = InStr(ctr, LCase(X.Value), LCase(C.Value))
                        If ctr = 0 Then Exit Do
                        X.Characters(ctr, Len(C.Value)).Font.ColorIndex = 3
                        ctr = ctr + Len(C.Value)
                    Loop
                    Set X = [B:B].FindNext(X)
                Loop While X.Address <> ResAdr
            End If
        Next C
    End Sub
    Cordialement.

    Daniel

    La plus perdue de toutes les journées est celle où l'on n'a pas ri. Chamfort

Discussions similaires

  1. [TPW] Recherche des occurences de lettres dans des mots
    Par forum dans le forum Codes sources à télécharger
    Réponses: 0
    Dernier message: 04/12/2011, 11h23
  2. Mettre des mots en surbrillance dans un texte
    Par Moloc'h dans le forum Contribuez / Téléchargez Sources et Outils
    Réponses: 0
    Dernier message: 14/02/2011, 19h03
  3. Réponses: 2
    Dernier message: 27/06/2007, 10h42
  4. comment en VBA mettre les mots dans une cellule en oblique
    Par antoine.dandois dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/02/2007, 17h10
  5. [VBA] EXCEL comment mettre un mot de passe dans d’une macro?
    Par POUY64 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 24/01/2006, 16h13

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