OVH Cloud OVH Cloud

texte de couleur

13 réponses
Avatar
evem&12~
Bonjour,
Voilà, j'ai deux listes de noms, dans deux feuilles, je voudrais que
les noms qui ce retrouvent dans les deux listes en même temps
apparaisent d'une autre façon (autre couleur par exemple).
Automatiquement à l'écriture du nom.
Merci de votre aide.
michel

10 réponses

1 2
Avatar
Pounet95
Bonjour,
Essaie ceci en adaptant nom des feuilles, colonnes, etc :

Dans module de feuille Feuil1

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Not Intersect(Target, Columns("A:A")) Is Nothing Then
rep = Chercher(Target.Value, "Feuil2")
If rep = True Then
Target.Interior.ColorIndex = 3
Else
Target.Interior.ColorIndex = xlNone
End If
End If
Sheets("Feuil1").Activate
Application.ScreenUpdating = True
End Sub

Dans module de feuille Feuil2

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Not Intersect(Target, Columns("A:A")) Is Nothing Then
rep = Chercher(Target.Value, "Feuil1")
If rep = True Then
Target.Interior.ColorIndex = 3
Else
Target.Interior.ColorIndex = xlNone
End If
End If
Sheets("Feuil2").Activate
Application.ScreenUpdating = True
End Sub

Dans un module standard

Function Chercher(Cible As String, Feuille As String) As Boolean
Sheets(Feuille).Activate
Chercher = False
On Error Resume Next
Columns("A:A").Select
Selection.Find(What:=Cible, After:¬tiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:úlse).Activate
If Err = 0 Then Chercher = True
End Function

Est-ce OK ?


--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/

<evem&12~@wanadoo.fr> a écrit dans le message de news:

Bonjour,
Voilà, j'ai deux listes de noms, dans deux feuilles, je voudrais que
les noms qui ce retrouvent dans les deux listes en même temps
apparaisent d'une autre façon (autre couleur par exemple).
Automatiquement à l'écriture du nom.
Merci de votre aide.
michel



Avatar
evem&12~
Merci pour la réponse, mais cela bloque à la 4èm ligne de la feuille 1
sur le mot "chercher"
michel

Le Wed, 15 Dec 2004 10:00:26 +0100, "Pounet95"
écrit:

Bonjour,
Essaie ceci en adaptant nom des feuilles, colonnes, etc :

Dans module de feuille Feuil1

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Not Intersect(Target, Columns("A:A")) Is Nothing Then
rep = Chercher(Target.Value, "Feuil2")
If rep = True Then
Target.Interior.ColorIndex = 3
Else
Target.Interior.ColorIndex = xlNone
End If
End If
Sheets("Feuil1").Activate
Application.ScreenUpdating = True
End Sub

Dans module de feuille Feuil2

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Not Intersect(Target, Columns("A:A")) Is Nothing Then
rep = Chercher(Target.Value, "Feuil1")
If rep = True Then
Target.Interior.ColorIndex = 3
Else
Target.Interior.ColorIndex = xlNone
End If
End If
Sheets("Feuil2").Activate
Application.ScreenUpdating = True
End Sub

Dans un module standard

Function Chercher(Cible As String, Feuille As String) As Boolean
Sheets(Feuille).Activate
Chercher = False
On Error Resume Next
Columns("A:A").Select
Selection.Find(What:=Cible, After:¬tiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:úlse).Activate
If Err = 0 Then Chercher = True
End Function

Est-ce OK ?


Avatar
Pounet95
Bonsoir,
Ca bloque ? Que se passe-t-il ?
Quel est le message d'erreur ?
Pour moi, XL200, XP Pro No problem .....

--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/

<evem&12~@wanadoo.fr> a écrit dans le message de news:

Merci pour la réponse, mais cela bloque à la 4èm ligne de la feuille 1
sur le mot "chercher"
michel

Le Wed, 15 Dec 2004 10:00:26 +0100, "Pounet95"
écrit:

Bonjour,
Essaie ceci en adaptant nom des feuilles, colonnes, etc :

Dans module de feuille Feuil1

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Not Intersect(Target, Columns("A:A")) Is Nothing Then
rep = Chercher(Target.Value, "Feuil2")
If rep = True Then
Target.Interior.ColorIndex = 3
Else
Target.Interior.ColorIndex = xlNone
End If
End If
Sheets("Feuil1").Activate
Application.ScreenUpdating = True
End Sub

Dans module de feuille Feuil2

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
If Not Intersect(Target, Columns("A:A")) Is Nothing Then
rep = Chercher(Target.Value, "Feuil1")
If rep = True Then
Target.Interior.ColorIndex = 3
Else
Target.Interior.ColorIndex = xlNone
End If
End If
Sheets("Feuil2").Activate
Application.ScreenUpdating = True
End Sub

Dans un module standard

Function Chercher(Cible As String, Feuille As String) As Boolean
Sheets(Feuille).Activate
Chercher = False
On Error Resume Next
Columns("A:A").Select
Selection.Find(What:=Cible, After:¬tiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:úlse).Activate
If Err = 0 Then Chercher = True
End Function

Est-ce OK ?





Avatar
evem&12~
Surement que je fais un bêtise, je place les codes dans visual basic a
microsoft excel objet et je clique deux fois sur feuille 1 je colle le
code et ensuite feuille 2 je colle le code puis à ThisWorkbook et je
colle le troisième code.
Autrement j'avais erreur de compilation sub ou function non définie et
le mot chercher est surligné
Pouvez vous me détailler la manipulation à suivre.
merci


Le Wed, 15 Dec 2004 16:53:09 +0100, "Pounet95"
écrit:

Bonsoir,
Ca bloque ? Que se passe-t-il ?
Quel est le message d'erreur ?
Pour moi, XL200, XP Pro No problem .....


Avatar
Pounet95
Bonsoir,
Pour mettre ces codes aux bons endroits :
1) module VBA de la feuille 1
positionner le curseur dans l'onglet de la feuille,
effectuer un clic avec le bouton droit de la souris,
dans le menu contextuel qui s'affiche ,selectionner Visualiser le code
l'éditeur VBE est disponible
copier dans la fenêtre qui vient de s'ouvrir le code pour la feuille 1
revenir dans la feuille de calcul excel

2) faire la même chose avec la feuille 2 et le code feuille 2

quand le code de la feuille 2 est copié, en restant dans le VBE
menu Insertion/module
3)copier la fonction

4) revenir dans le classeur feuille 1 ou 2 et commencer la saisie

PS : si problème, ne pas hésiter à le dire dans le même fil
bon courage

--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/

<evem&12~@wanadoo.fr> a écrit dans le message de news:

Surement que je fais un bêtise, je place les codes dans visual basic a
microsoft excel objet et je clique deux fois sur feuille 1 je colle le
code et ensuite feuille 2 je colle le code puis à ThisWorkbook et je
colle le troisième code.
Autrement j'avais erreur de compilation sub ou function non définie et
le mot chercher est surligné
Pouvez vous me détailler la manipulation à suivre.
merci


Le Wed, 15 Dec 2004 16:53:09 +0100, "Pounet95"
écrit:

Bonsoir,
Ca bloque ? Que se passe-t-il ?
Quel est le message d'erreur ?
Pour moi, XL200, XP Pro No problem .....





Avatar
evem&12~
Cela marche, mais excuse si je tape une seule lettre qui est déja dans
l'autre feuille cela met de suite la couleur. Il faut le mot entier
pour colorer la cellule, et les deux feuilles devront ce colorier.
merci pour votre dévouement.

Le Wed, 15 Dec 2004 20:45:50 +0100, "Pounet95"
écrit:

Bonsoir,
Pour mettre ces codes aux bons endroits :
1) module VBA de la feuille 1
positionner le curseur dans l'onglet de la feuille,
effectuer un clic avec le bouton droit de la souris,
dans le menu contextuel qui s'affiche ,selectionner Visualiser le code
l'éditeur VBE est disponible
copier dans la fenêtre qui vient de s'ouvrir le code pour la feuille 1
revenir dans la feuille de calcul excel

2) faire la même chose avec la feuille 2 et le code feuille 2

quand le code de la feuille 2 est copié, en restant dans le VBE
menu Insertion/module
3)copier la fonction

4) revenir dans le classeur feuille 1 ou 2 et commencer la saisie

PS : si problème, ne pas hésiter à le dire dans le même fil
bon courage


Avatar
Pounet95
Bonjour,
Vu pourquoi, il faut comparer les chaines en entier.
Remplacer dans le module standard


Selection.Find(What:=Cible, After:¬tiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:úlse).Activate

par

Selection.Find(What:=Cible, After:¬tiveCell, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:úlse).Activate

Cela devrait mieux aller. Signaler si OK ou problème. Merci
--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/

<evem&12~@wanadoo.fr> a écrit dans le message de news:

Cela marche, mais excuse si je tape une seule lettre qui est déja dans
l'autre feuille cela met de suite la couleur. Il faut le mot entier
pour colorer la cellule, et les deux feuilles devront ce colorier.
merci pour votre dévouement.

Le Wed, 15 Dec 2004 20:45:50 +0100, "Pounet95"
écrit:

Bonsoir,
Pour mettre ces codes aux bons endroits :
1) module VBA de la feuille 1
positionner le curseur dans l'onglet de la feuille,
effectuer un clic avec le bouton droit de la souris,
dans le menu contextuel qui s'affiche ,selectionner Visualiser le code
l'éditeur VBE est disponible
copier dans la fenêtre qui vient de s'ouvrir le code pour la feuille 1
revenir dans la feuille de calcul excel

2) faire la même chose avec la feuille 2 et le code feuille 2

quand le code de la feuille 2 est copié, en restant dans le VBE
menu Insertion/module
3)copier la fonction

4) revenir dans le classeur feuille 1 ou 2 et commencer la saisie

PS : si problème, ne pas hésiter à le dire dans le même fil
bon courage





Avatar
evem&12~
Impecable, mais une petite chose excuser si j'insiste il faut que les
deux feuilles soit colorer si le texte est idem, aussi bien tapé d'une
feuille ou de l'autre.
Mille exuces michel

Le Thu, 16 Dec 2004 15:10:38 +0100, "Pounet95"
écrit:

Bonjour,
Vu pourquoi, il faut comparer les chaines en entier.
Remplacer dans le module standard


Selection.Find(What:=Cible, After:¬tiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:úlse).Activate

par

Selection.Find(What:=Cible, After:¬tiveCell, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:úlse).Activate

Cela devrait mieux aller. Signaler si OK ou problème. Merci


Avatar
Pounet95
Bonjour,
Dans le module standard, dans la fonction, remplacer

If Err=0 then Chercher=True

par

If Err = 0 Then
Target.Interior.ColorIndex = 3
Chercher = True
End If

Ca devrait faire l'affaire (mais non testé )
--
Pounet95
on trouve tout ( ou presque ) http://www.excelabo.net/

<evem&12~@wanadoo.fr> a écrit dans le message de news:

Impecable, mais une petite chose excuser si j'insiste il faut que les
deux feuilles soit colorer si le texte est idem, aussi bien tapé d'une
feuille ou de l'autre.
Mille exuces michel

Le Thu, 16 Dec 2004 15:10:38 +0100, "Pounet95"
écrit:

Bonjour,
Vu pourquoi, il faut comparer les chaines en entier.
Remplacer dans le module standard


Selection.Find(What:=Cible, After:¬tiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:úlse).Activate

par

Selection.Find(What:=Cible, After:¬tiveCell, LookIn:=xlValues, _
LookAt:=xlWhole, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:úlse).Activate

Cela devrait mieux aller. Signaler si OK ou problème. Merci





Avatar
evem&12~
non cela est rouge que dans la derniere feuille écrite
michel

Le Fri, 17 Dec 2004 09:39:25 +0100, "Pounet95"
écrit:

Bonjour,
Dans le module standard, dans la fonction, remplacer

If Err=0 then Chercher=True

par

If Err = 0 Then
Target.Interior.ColorIndex = 3
Chercher = True
End If

Ca devrait faire l'affaire (mais non testé )


1 2