Mettre une cellule en jaune quand le contenue correspond a une des valeurs d'une colonne d'un autre onglet

Celline

XLDnaute Nouveau
Bonjour,


J'ai un fichier contenant 2 onglets
l'un contient ma liste de comptes l'autre toutes les personnes qui se sont inscrites à un webinaire avec leur nom de comptes (société)
J'aimerai surigner en jaune les lignes correspondants aux contacts appartenant à mes comptes

Participants : Feuil1
Colonne B contient les noms des sociétés
Feuil2 : mes comptes
Colone A : le nom de mes comptes

Merci infiniement pour votre aide

Celline
 

Franc58

XLDnaute Occasionnel
Salut, voici une proposition en vba, c'est sûrement faisable aussi avec une mise en forme conditionnelle.

VB:
Sub SurlignerCorrespondances()
    Dim wsParticipants As Worksheet
    Dim wsComptes As Worksheet
    Dim lastRowParticipants As Long
    Dim lastRowComptes As Long
    Dim i As Long
    Dim j As Long
    Dim matchFound As Boolean
    
    ' Définir les feuilles
    Set wsParticipants = ThisWorkbook.Sheets("Feuil1") ' Feuille des participants
    Set wsComptes = ThisWorkbook.Sheets("Feuil2") ' Feuille des comptes
    
    ' Trouver la dernière ligne dans les deux feuilles
    lastRowParticipants = wsParticipants.Cells(wsParticipants.Rows.Count, "B").End(xlUp).Row
    lastRowComptes = wsComptes.Cells(wsComptes.Rows.Count, "A").End(xlUp).Row
    
    ' Boucle sur chaque participant
    For i = 2 To lastRowParticipants ' Commence à 2 pour ignorer les en-têtes
        matchFound = False
        
        ' Boucle sur chaque compte pour trouver une correspondance
        For j = 2 To lastRowComptes
            If wsParticipants.Cells(i, 2).Value = wsComptes.Cells(j, 1).Value Then
                matchFound = True
                Exit For
            End If
        Next j
        
        ' Si une correspondance est trouvée, surligner la ligne
        If matchFound Then
            wsParticipants.Rows(i).Interior.Color = RGB(255, 255, 0) ' Couleur jaune
        End If
    Next i
    
    MsgBox "Surlignage terminé !"
End Sub
 

Celline

XLDnaute Nouveau
Salut, voici une proposition en vba, c'est sûrement faisable aussi avec une mise en forme conditionnelle.

VB:
Sub SurlignerCorrespondances()
    Dim wsParticipants As Worksheet
    Dim wsComptes As Worksheet
    Dim lastRowParticipants As Long
    Dim lastRowComptes As Long
    Dim i As Long
    Dim j As Long
    Dim matchFound As Boolean
   
    ' Définir les feuilles
    Set wsParticipants = ThisWorkbook.Sheets("Feuil1") ' Feuille des participants
    Set wsComptes = ThisWorkbook.Sheets("Feuil2") ' Feuille des comptes
   
    ' Trouver la dernière ligne dans les deux feuilles
    lastRowParticipants = wsParticipants.Cells(wsParticipants.Rows.Count, "B").End(xlUp).Row
    lastRowComptes = wsComptes.Cells(wsComptes.Rows.Count, "A").End(xlUp).Row
   
    ' Boucle sur chaque participant
    For i = 2 To lastRowParticipants ' Commence à 2 pour ignorer les en-têtes
        matchFound = False
       
        ' Boucle sur chaque compte pour trouver une correspondance
        For j = 2 To lastRowComptes
            If wsParticipants.Cells(i, 2).Value = wsComptes.Cells(j, 1).Value Then
                matchFound = True
                Exit For
            End If
        Next j
       
        ' Si une correspondance est trouvée, surligner la ligne
        If matchFound Then
            wsParticipants.Rows(i).Interior.Color = RGB(255, 255, 0) ' Couleur jaune
        End If
    Next i
   
    MsgBox "Surlignage terminé !"
End Sub
merci beaucoup je vais tester de suite :)
 

job75

XLDnaute Barbatruc
Bonjour à tous,
le plus simple pour moi serait d'avoir une croix devant les occurences de la feuille 1 d'ont le contenu de la colonne Company, existe dans la feuille 2
Pourquoi une croix ? Vous avez demandé de colorer en jaune alors voyez la MFC dans le fichier joint :
Code:
=(LIGNE()>1)*NB.SI(Feuil2!$D:$D;$D1)
A+
 

Pièces jointes

  • exemple.xlsx
    11.1 KB · Affichages: 1

Celline

XLDnaute Nouveau
super ! c'e
Bonjour à tous,

Pourquoi une croix ? Vous avez demandé de colorer en jaune alors voyez la MFC dans le fichier joint :
Code:
=(LIGNE()>1)*NB.SI(Feuil2!$D:$D;$D1)
A+
C'est super ! Merci infiniement
ça marche
maintenant je dois appliquer ça à mon vrai fichier, mais je ne trouve pas où mettre le code :
Code:
=(LIGNE()>1)*NB.SI(Feuil2!$D:$D;$D1)
 

Pièces jointes

  • Capture d'écran 2024-09-25 143252.png
    Capture d'écran 2024-09-25 143252.png
    84.9 KB · Affichages: 0

Statistiques des forums

Discussions
313 985
Messages
2 104 202
Membres
108 943
dernier inscrit
lanier2