Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim wsSC As Worksheet
Dim rng As Range
Dim dayOfWeek As String
Dim matchRow As Long
' Définir la feuille "SC"
Set wsSC = ThisWorkbook.Sheets("SC")
' Vérifier si la cellule modifiée est dans la colonne C
If Target.Column = 3 Then
' Rechercher le code dans la feuille "SC"
Set rng = wsSC.Range("C:C").Find(Target.Value, LookIn:=xlValues)
' Si le code est trouvé
If Not rng Is Nothing Then
' Extraire le jour de la semaine de la date en colonne B
dayOfWeek = Format(Target.Offset(0, -1).Value, "dddd")
' Convertir le jour de la semaine en catégorie
Select Case dayOfWeek
Case "lundi", "mardi", "mercredi", "jeudi", "vendredi"
dayOfWeek = "Lundi au vendredi"
Case "samedi"
dayOfWeek = "Samedi"
Case "dimanche"
dayOfWeek = "Dimanche"
End Select
' Trouver la catégorie correspondante dans la feuille "SC"
matchRow = Application.Match(dayOfWeek, wsSC.Range("B:B"), 0)
' Si la catégorie est trouvée
If Not IsError(matchRow) Then
' Copier la ligne de D à W
wsSC.Range("D" & matchRow & ":W" & matchRow).Copy
' Coller dans la même ligne que la cellule contenant le code recherché
Target.Offset(0, 1).PasteSpecial xlPasteValues
End If
End If
End If
Application.CutCopyMode = False
End Sub