Option Explicit
Public T
Public Lgn As Integer
Public StrSecu$
Public DateCompare As Long
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
T = Range("Tableau1").Value 'On récupère les valeurs du tableau "Tableau1"
If Sh.Name Like "FicSécu#" Then 'Si le Nom de la feuille est de ce Format
With Sh 'Avec cette feuille
DateCompare = DateValue(.Cells(5, 3)) 'On récupère la date
StrSecu$ = .Cells(3, 5)'Le Libellé de la Cellule "Sécu 1","Sécu 2" Etc
For Lgn = 1 To UBound(T, 1) 'Pour chaque ligne du tableau
If CLng(DateValue(T(Lgn, 1))) = DateCompare And T(Lgn, 3) = StrSecu Then 'Si concordance de Date et De Libellé
With .Cells(3, 4) 'Avec la cellule
.Value = "Déjà fait" 'On y met ce texte
.Font.Color = RGB(255, 0, 0) 'On Colore
End With
Exit For 'On quite la Boucle si concordance trouvé
Else
With .Cells(3, 4)
.Value= vbNullString 'On Vide si pas de Concordance
.Font.Color = RGB(0, 0,0) 'On remet a noir
End with
End If
Next Lgn 'autre Ligne
End With
End If
End Sub