Sub recopier()
With Sheets("Participations journée")
ligDate = Application.Match(.[C5], Sheets("Réel Courrier").[B:B], 0) 'trouve la ligne correspondant à la date
Sheets("Réel Courrier").Cells(ligDate, 21) = .[C8] 'recopie la durée colonne C
Sheets("Réel R.Matricule").Cells(ligDate, 21) = .[D8] 'recopie la durée colonne D
For Each c In .[C9:D18].SpecialCells(xlCellTypeConstants) 'pour chaque cellule contenant une constante dans la plage C9:D18
Set f = IIf(c.Column = 3, Sheets("Réel Courrier"), Sheets("Réel R.Matricule")) 'si colonne C, feuille concernée = "Réel courrier". Si pas, c'est l'autre ;-D
gr = IIf((c.Row Mod 2) = 1, .Cells(c.Row, 2), Cells(c.Row - 1, 2)) 'si ligne impaire, prendre le nom du groupe dans la ligne, en col B. Si pas, une ligne au-dessus
colGr = Application.Match(gr, f.[7:7], 0) 'trouve la colonne du groupe concerné
f.Cells(ligDate, colGr) = c 'copie la valeur dans le bonne ligne et la bonne colonne
Next c
End With
End Sub