Coucou,
Chui Null EN VBA et j'ai trouvé ce code sur Net et je souhaite le modifier selon mes besoin,
en fait ce code consiste à mettre en évidence dans la Feuil1 les nouveautés, cad les données que l'on ne trouve pas dans Feuil2.
dans la Feuil1, c'est la colonne 1 qui m'intéresse et que je dois comparer à la 1ere colonne de la Feuil2 (mais par ligne!) ( pas dans les 4 col de la Feuil2 comme dans ce code) pour savoir si le contenu d'une cellule de col1/Feuil1 se trouve quelquepart dans la 1ere col de Feuil2.
on passe par toutes les ligne de Feuil2 jusqu'à trouver une ligne où le contenu de Feuil1/L1C1 est trouvé.
Alors si ce contenu est trouvé, on peut passer à la ligne suivante (Feuil1/L2C1).
car ce qui m'intéress c'est ce qui n'est pas trouvé.
en effet, si le contenu de Feuil1/L1C1 n'est pas trouvé, je le mets en couleur comme ca, les nouveautés sautent aux yeux.
---------------------
la modification souhaitée est juste de chercher seulement dans la 1ere colonne de la feuil2 ( pas dans les 4 colonnes )
---------------------
qlq'un peut m'aider ?
-----------------------
voici le code :
Important : Cette macro doit être collée dans un nouveau module Standart (Module1) par exemple
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
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 Sub Test() Dim iLR1%, iLR2%, i%, j%, k%, z$, Tablo 'Gèle l'écran pour accélérer le traitement Application.ScreenUpdating = False 'Détermination de la dernière ligne de chaque feuille iLR1 = Worksheets("Feuil1" ).Cells(65535, 1).End(xlUp).Row iLR2 = Worksheets("Feuil2" ).Cells(65535, 1).End(xlUp).Row 'Charge en mémoire les valeurs de Feuil2 Tablo = Worksheets("Feuil2" ).Range("A2 : D" & iLR2) With Worksheets("Feuil1" ) 'Colorie toute les cellules en rouge .Range("A2:A" & iLR1).Interior.ColorIndex = 3 'Pour chaque ligne dans Feuil1 For i = 1 To iLR1 'Mémorise la valeur de la cellule z = .Cells(i, 1).Value 'Parcourt le tableau et recherche l'égalité For j = 1 To UBound(Tablo) For k = 1 To 4 'si trouve une égalité pose un drapeau If Tablo(j, k) = z Then Y = True Next 's'il y a un drapeau décolore la cellule If Y Then .Cells(i, 1).Interior.ColorIndex = xlColorIndexNone 'remet le drapeau à Faux Y = False 'et arrête l'examen du tableau Exit For End If Next 'recommence sur les valeurs suivantes de Feuil1 Next End With End Sub
Partager