Colorier les lignes différentes de deux feuilles
Résolu/Fermé
guillaume gdco
Messages postés
68
Date d'inscription
samedi 15 août 2009
Statut
Membre
Dernière intervention
30 août 2020
-
6 avril 2020 à 10:23
guillaume gdco Messages postés 68 Date d'inscription samedi 15 août 2009 Statut Membre Dernière intervention 30 août 2020 - 17 avril 2020 à 19:10
guillaume gdco Messages postés 68 Date d'inscription samedi 15 août 2009 Statut Membre Dernière intervention 30 août 2020 - 17 avril 2020 à 19:10
A voir également:
- Colorier les lignes différentes de deux feuilles
- Fusionner deux feuilles excel - Guide
- Excel trier par ordre alphabétique en gardant les lignes - Guide
- Deux ecran pc - Guide
- Comment faire un livret avec des feuilles a4 - Guide
- Site de vente en ligne particulier - Guide
8 réponses
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
6 avril 2020 à 12:16
6 avril 2020 à 12:16
Bonjour,
Essaies comme ça :
Essaies comme ça :
Option Explicit Sub Comparer() ' Compare les valeurs de la feuille 1 et celles de la feuille 2 Dim dv1 As Object Dim cel As Range Dim d°L As Long ' Mémoriser les valeurs de la feuille 1 sans doublon Set dv1 = CreateObject("Scripting.Dictionary") With Worksheets(1) d°L = .Cells(.Rows.Count, "A").End(xlUp).Row For Each cel In .Range("A1:A" & d°L) dv1(cel.Value) = "" Next End With ' Colorer les différences sur la feuille 2 With Worksheets(2) d°L = .Cells(.Rows.Count, "A").End(xlUp).Row For Each cel In .Range("A1:A" & d°L) If Not dv1.Exists(cel.Value) Then cel.Interior.ColorIndex = 3 Else cel.Interior.ColorIndex = xlNone End If Next End With End Sub
yg_be
Messages postés
23361
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
29 novembre 2024
Ambassadeur
1 556
6 avril 2020 à 12:09
6 avril 2020 à 12:09
bonjour,
merci de spécifier "basic" quand tu utilises les balises de code avec du vba.
je suggère, pour que tu comprennes ce que fait ton code, que tu changes temporairement la logique: colorie les lignes identiques.
merci de spécifier "basic" quand tu utilises les balises de code avec du vba.
je suggère, pour que tu comprennes ce que fait ton code, que tu changes temporairement la logique: colorie les lignes identiques.
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
6 avril 2020 à 12:18
6 avril 2020 à 12:18
Ce sera pareil : « les lignes identiques ne sont pas dans le même classement »
yg_be
Messages postés
23361
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
29 novembre 2024
1 556
>
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
Modifié le 6 avril 2020 à 12:23
Modifié le 6 avril 2020 à 12:23
as-tu essayé? as-tu remarqué la double boucle?
guillaume gdco
Messages postés
68
Date d'inscription
samedi 15 août 2009
Statut
Membre
Dernière intervention
30 août 2020
6 avril 2020 à 13:33
6 avril 2020 à 13:33
Merci c'est parfait
guillaume gdco
Messages postés
68
Date d'inscription
samedi 15 août 2009
Statut
Membre
Dernière intervention
30 août 2020
10 avril 2020 à 20:02
10 avril 2020 à 20:02
petite question complémentaire, si je veux colorer la colonne B correspondante, je peux faire ainsi?
Option Explicit Sub Comparer() ' Compare les valeurs de la feuille 1 et celles de la feuille 2 Dim dv1 As Object Dim cel As Range Dim d°L As Long ' Mémoriser les valeurs de la feuille 1 sans doublon Set dv1 = CreateObject("Scripting.Dictionary") With Worksheets(1) d°L = .Cells(.Rows.Count, "A").End(xlUp).Row For Each cel In .Range("A2:B" & d°L) dv1(cel.Value) = "" Next End With ' Colorer les différences sur la feuille 2 With Worksheets(2) d°L = .Cells(.Rows.Count, "A").End(xlUp).Row For Each cel In .Range("A2:B" & d°L) If Not dv1.Exists(cel.Value) Then cel.Interior.ColorIndex = 37 Else cel.Interior.ColorIndex = xlNone End If Next End With End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
10 avril 2020 à 22:22
10 avril 2020 à 22:22
Non,
Essaies comme ça :
Essaies comme ça :
Option Explicit Sub Comparer() ' Compare les valeurs de la feuille 1 et celles de la feuille 2 Dim dv1 As Object Dim cel As Range Dim d°L As Long ' Mémoriser les valeurs de la feuille 1 sans doublon Set dv1 = CreateObject("Scripting.Dictionary") With Worksheets(1) d°L = .Cells(.Rows.Count, "A").End(xlUp).Row For Each cel In .Range("A2:A" & d°L) dv1(cel.Value) = "" Next End With ' Colorer les différences sur la feuille 2 With Worksheets(2) d°L = .Cells(.Rows.Count, "A").End(xlUp).Row For Each cel In .Range("A2:A" & d°L) If Not dv1.Exists(cel.Value) Then cel.Resize(1, 2).Interior.ColorIndex = 37 Else cel.Resize(1, 2).Interior.ColorIndex = xlNone End If Next End With End Sub
guillaume gdco
Messages postés
68
Date d'inscription
samedi 15 août 2009
Statut
Membre
Dernière intervention
30 août 2020
17 avril 2020 à 11:10
17 avril 2020 à 11:10
Bonjour,
après utilisation je me retrouve avec une erreur dans l'application de la macro.
J'ai besoin de vérifier si les colonnes A et C sont identique au 2 feuilles et pas que la colonne A.
J'ai essayé de modifier les lignes 10, 11 et 17, 18 de la macro précédente ainsi mais cela ne marche pas.
merci de votre aide
après utilisation je me retrouve avec une erreur dans l'application de la macro.
J'ai besoin de vérifier si les colonnes A et C sont identique au 2 feuilles et pas que la colonne A.
J'ai essayé de modifier les lignes 10, 11 et 17, 18 de la macro précédente ainsi mais cela ne marche pas.
merci de votre aide
Option Explicit Sub Comparer() ' Compare les valeurs de la feuille 1 et celles de la feuille 2 Dim dv1 As Object Dim cel As Range Dim d°L As Long ' Mémoriser les valeurs de la feuille 1 sans doublon Set dv1 = CreateObject("Scripting.Dictionary") With Worksheets(1) d°L = .Cells(.Rows.Count, "A;C").End(xlUp).Row For Each cel In .Range("A2:A" & d°L) dv1(cel.Value) = "" For Each cel In .Range("C2:C" & d°L) dv1(cel.Value) = "" Next End With ' Colorer les différences sur la feuille 2 With Worksheets(2) d°L = .Cells(.Rows.Count, "A;C").End(xlUp).Row For Each cel In .Range("A2:A" & d°L) For Each cel In .Range("C2:C" & d°L) If Not dv1.Exists(cel.Value) Then cel.Resize(1, 2).Interior.ColorIndex = 37 Else cel.Resize(1, 2).Interior.ColorIndex = xlNone End If Next End With End Sub
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
Modifié le 17 avril 2020 à 18:56
Modifié le 17 avril 2020 à 18:56
Bonjour,
Si j'ai bien compris tu veux vérifier pour chaque ligne de la feuille 2 si le couple de valeurs en A et C existe quelque part sur la feuille 1 en A et C d'une même ligne.
Essaies comme ça :
Si j'ai bien compris tu veux vérifier pour chaque ligne de la feuille 2 si le couple de valeurs en A et C existe quelque part sur la feuille 1 en A et C d'une même ligne.
Essaies comme ça :
Option Explicit Sub Comparer() ' Compare les valeurs de la feuille 1 et celles de la feuille 2 Dim dv1 As Object Dim cel As Range Dim d°L As Long ' Mémoriser les valeurs de la feuille 1 sans doublon Set dv1 = CreateObject("Scripting.Dictionary") With Worksheets(1) d°L = .Cells(.Rows.Count, "A").End(xlUp).Row For Each cel In .Range("A2:A" & d°L) dv1(cel.Value & Chr(1) & cel.Offset(0, 2).Value) = "" Next End With ' Colorer les différences sur la feuille 2 With Worksheets(2) d°L = .Cells(.Rows.Count, "A").End(xlUp).Row For Each cel In .Range("A2:A" & d°L) If Not dv1.Exists(cel.Value & Chr(1) & cel.Offset(0, 2).Value) Then cel.Resize(1, 3).Interior.ColorIndex = 37 Else cel.Resize(1, 3).Interior.ColorIndex = xlNone End If Next End With End Sub
guillaume gdco
Messages postés
68
Date d'inscription
samedi 15 août 2009
Statut
Membre
Dernière intervention
30 août 2020
17 avril 2020 à 19:10
17 avril 2020 à 19:10
Merci Patrice, je tâtonnais mais pas au bonne endroit.