OVH Cloud OVH Cloud

Recherche valeur

8 réponses
Avatar
JacquesH
Bonjour à toutes et tous,

J'ai dans la feuille 1 en colonne A par exemple une liste de 500 à
1000 valeurs. En colonnes B à D des informations concernant ces valeurs.

Dans la feuille 2, je saisie en colonne 1 une petite liste d'environ
20 valeurs qui en principe sont dans la première mais qui peuvent ne pas
y être.

Ce que je souhaite réaliser :
- Colorer en rouge les lignes de la feuille 1 qui correspondent aux
valeurs présentes sur la feuille 2.
- Colorer en vert les lignes de la feuille 2 qui correspondent aux
valeurs qui ne sont pas dans la feuille 1.

J'aimerais le réaliser en VBA. Cela doit bien déjà avoir été traité
mais je n'en trouve pas trace.

Merci par avance de votre aide.

Jac

8 réponses

Avatar
Jacky
Bonsoir,
Les valeurs de la feuille 2 sont elles à rechercher uniquement dans la
colonne A de la feuille 1 ??

--
Salutations
JJ

"JacquesH" a écrit dans le message de
news:
Bonjour à toutes et tous,

J'ai dans la feuille 1 en colonne A par exemple une liste de 500 à 1000
valeurs. En colonnes B à D des informations concernant ces valeurs.

Dans la feuille 2, je saisie en colonne 1 une petite liste d'environ 20
valeurs qui en principe sont dans la première mais qui peuvent ne pas y
être.

Ce que je souhaite réaliser :
- Colorer en rouge les lignes de la feuille 1 qui correspondent aux
valeurs présentes sur la feuille 2.
- Colorer en vert les lignes de la feuille 2 qui correspondent aux valeurs
qui ne sont pas dans la feuille 1.

J'aimerais le réaliser en VBA. Cela doit bien déjà avoir été traité
mais je n'en trouve pas trace.

Merci par avance de votre aide.

Jac


Avatar
JacquesH
Bonsoir et merci pour t'intéresser à mon problème.

Oui, les valeurs sont à rechercher uniquement dans la colonne A de la
feuille 1.



Bonsoir,
Les valeurs de la feuille 2 sont elles à rechercher uniquement dans la
colonne A de la feuille 1 ??



Avatar
Jacky
Re...
J'ai supposer les colonnes A:D à peinturlurer

'-----------
Sub jj()
Application.ScreenUpdating = False
Sheets("feuil1").Range("a1:d" &
Sheets("feuil1").Range("a65536").End(3).Row).Interior.ColorIndex = 4
For Each c In Sheets("feuil2").Range("a1:a" &
Sheets("feuil2").Range("a65536").End(3).Row)
For Each d In Sheets("feuil1").Range("a1:a" &
Sheets("feuil1").Range("a65536").End(3).Row)
If c = d Then Sheets("feuil1").Range("a" & d.Row & ":" & "d" &
d.Row).Interior.ColorIndex = 3
Next
Next
End Sub
'--------------
--
Salutations
JJ

"JacquesH" a écrit dans le message de
news:
Bonsoir et merci pour t'intéresser à mon problème.

Oui, les valeurs sont à rechercher uniquement dans la colonne A de la
feuille 1.



Bonsoir,
Les valeurs de la feuille 2 sont elles à rechercher uniquement dans la
colonne A de la feuille 1 ??





Avatar
Jacky
Heu,
J'ai supposé
Ps: attention aux coupures de lignes.
--
Salutations
JJ

"
Avatar
jacquesH
Je viens d'essayer ce que tu proposes.
La macro correspond en grande partie à ce que je veux réaliser :
- OK pour la coloration en rouge.
- La coloration en vert de la feuille 1 ne me sert pas mais je saurai
l'enlever.
- En revanche, il me faudrait le moyen de colorer les valeurs de la
feuille2 qui ne seraient pas présentes dans la feuille 1.

Merci de ton aide

Jacques




Re...
J'ai supposer les colonnes A:D à peinturlurer

'-----------
Sub jj()
Application.ScreenUpdating = False
Sheets("feuil1").Range("a1:d" &
Sheets("feuil1").Range("a65536").End(3).Row).Interior.ColorIndex = 4
For Each c In Sheets("feuil2").Range("a1:a" &
Sheets("feuil2").Range("a65536").End(3).Row)
For Each d In Sheets("feuil1").Range("a1:a" &
Sheets("feuil1").Range("a65536").End(3).Row)
If c = d Then Sheets("feuil1").Range("a" & d.Row & ":" & "d" &
d.Row).Interior.ColorIndex = 3
Next
Next
End Sub
'--------------


Avatar
Jacky
Re...
Je n'avais pas fait attention....
Ceci alors....peut-être
'--------
Sub jj()
Application.ScreenUpdating = False
Sheets("feuil2").Range("a1:d" &
Sheets("feuil2").Range("a65536").End(3).Row).Interior.ColorIndex = 4
For Each c In Sheets("feuil2").Range("a1:a" &
Sheets("feuil2").Range("a65536").End(3).Row)
For Each d In Sheets("feuil1").Range("a1:a" &
Sheets("feuil1").Range("a65536").End(3).Row)
If c = d Then
Sheets("feuil1").Range("a" & d.Row & ":" & "d" &
d.Row).Interior.ColorIndex = 3
Sheets("feuil2").Range("a" & c.Row & ":" & "d" &
c.Row).Interior.ColorIndex = xlNone
End If
Next
Next
End Sub
'-------------
--
Salutations
JJ

"jacquesH" a écrit dans le message de
news:
Je viens d'essayer ce que tu proposes.
La macro correspond en grande partie à ce que je veux réaliser :
- OK pour la coloration en rouge.
- La coloration en vert de la feuille 1 ne me sert pas mais je saurai
l'enlever.
- En revanche, il me faudrait le moyen de colorer les valeurs de la
feuille2 qui ne seraient pas présentes dans la feuille 1.

Merci de ton aide

Jacques



Avatar
jacquesH
OK, tout fonctionne

Merci encore

Jacques

Re...
Je n'avais pas fait attention....
Ceci alors....peut-être
'--------
Sub jj()
Application.ScreenUpdating = False
Sheets("feuil2").Range("a1:d" &
Sheets("feuil2").Range("a65536").End(3).Row).Interior.ColorIndex = 4
For Each c In Sheets("feuil2").Range("a1:a" &
Sheets("feuil2").Range("a65536").End(3).Row)
For Each d In Sheets("feuil1").Range("a1:a" &
Sheets("feuil1").Range("a65536").End(3).Row)
If c = d Then
Sheets("feuil1").Range("a" & d.Row & ":" & "d" &
d.Row).Interior.ColorIndex = 3
Sheets("feuil2").Range("a" & c.Row & ":" & "d" &
c.Row).Interior.ColorIndex = xlNone
End If
Next
Next
End Sub
'-------------


Avatar
AV
J'aimerais le réaliser en VBA.


Personnellement je n'en vois pas l'intérêt !
Il existe la Mise En Forme Conditionnelle...

AV