Mise en forme

vincent -  
 Utilisateur anonyme -
Bonjour à tous,

J'ai plusieurs cellules Excel qui contiennent un texte différent mais aussi avec un même nom, par ex Dupont.
ex cellule A1 : Paris Dupont
cellule A2 : Lille Dupont
cellule A3 : Lyon Dupont
Je souhaiterais mettre en rouge le mot Dupont pour les 3 cellules en même temps, mais je n'y arrive pas.
En vous remerciant d'avance pour votre aide précieuse.
Vincent

3 réponses

Yoyo01000 Messages postés 1639 Date d'inscription   Statut Membre Dernière intervention   168
 
Bonjour,
pour moi, c'est impossible d'appliquer une MFC seulement pour une partie de texte dans la même cellule. C'est soit tout, soit rien !

Il y a peut-être une solution (VBA ?) qu'un autre membre pourra t'apporter...
1
Utilisateur anonyme
 
Bonjour
Avec une macro VBA (pas de moi !!, merci myDearFriend!)

Ouvrir le module Macro (Alt + F11)
Double click sur la Feuille, puis coller dans la partie droite et Enregistrer.

Option Explicit

Sub Traitement()
'myDearFriend! - www.mdf-xlpages.com
Dim Plage As Range, Cel As Range
Dim LeMot As String, AdrDeb As String

'A adapter en fonction du mot voulu ----------
'Et de la Plage voulue -----------------------
Set Plage = Sheets("Feuil1").Range("A1:Z2000")
LeMot = "Dupont"
' --------------------------------------------

With Plage
Set Cel = .Find(LeMot, LookAt:=xlPart)
If Not Cel Is Nothing Then
AdrDeb = Cel.Address
Do
Modif Cel, LeMot
Set Cel = .FindNext(Cel)
Loop While Not Cel Is Nothing And AdrDeb <> Cel.Address
End If
End With
End Sub

Private Sub Modif(ByRef Cel As Range, LeMot)
Dim T As String
Dim Pos As Integer
T = Cel.Text
Do
'Respecte la casse Majuscule/Minuscule -------
Pos = InStr(Pos + 1, T, LeMot)
' Ne tient pas compte des Majuscule/Minuscule-
' Pos = InStr(Pos + 1, T, LeMot[B], vbTextCompare[/B])
' --------------------------------------------
If Pos > 0 Then
With Cel.Characters(Start:=Pos, Length:=Len(LeMot)).Font
.FontStyle = "Gras"
.ColorIndex = 3 'rouge
End With
End If
Loop Until Pos = 0
End Sub


Bien enregistrer en Classeur avec macro (xlsm)
A+
1
vincent
 
Merci beaucoup, mais pas d'autre façon qu'une macro ?
0
Utilisateur anonyme > vincent
 
Bonjour
Non, à part manuellement en sélectionnant dans la zone de saisie le texte à changer, cellule par cellule.
Les mises en forme conditionnelles ne fonctionnent que sur la totalité du contenu de cellule...
C'est un tableur, pas un traitement de texte !! Il fait déjà une tonne de chose.
A+
0
Utilisateur anonyme > Utilisateur anonyme
 
Après pourquoi pas "gâcher" une colonne et saisir le Nom dans la colonne d'à coté !!
C'est peut être votre méthode qui est à revoir (peut être, je connais pas votre activité sur ce document). :-)
A+
0
Yoyo01000 Messages postés 1639 Date d'inscription   Statut Membre Dernière intervention   168
 
Il n'y a que VBA étant capable d'apporter une solution autonome.

Maintenant, plusieurs possibilités :
Soit tu intègres cette macro en suivant la procédure de macintosh
Soit tu le fais manuellement
Soit tu "déconcatenes"

à toi de voir ;)
1
Utilisateur anonyme
 
Bonjour Yoyo01000
J'adore ton "déconcatenes" :-) :-)
A+
0