Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) 'au boucle clic dans l'onglet
Dim CL As Range 'déclare la variable CL (Cellule des Lignes)
Dim CC As Range 'déclare la variable CC (Cellule des Colonnes)
If Application.Intersect(Target, Range("B2:C3")) Is Nothing Then Exit Sub 'si le double-clic a lieu ailleurs que dans la plage B2:C3, sort de la procédure
Cancel = True 'empêche le mode [Édition] lié au double-clic
Range("D4:S7").ClearContents 'efface les anciennes valeurs
For Each CL In Range("B4:B7") 'boucle 1 sur toutes les cellules de la plage B4:B7
For Each CC In Range("D2:S2") 'boucle 2 sur toutes les cellules de la plage D2:S2
'si la cellule CL est égale à la cellule CC et si la cellule adjacente à CL est égale à la cellule en dessous de CC, place "1" à l'intersection de la ligne et la colonne, sort de la boucle 2
If CL.Value = CC.Value And CL.Offset(0, 1).Value = CC.Offset(1, 0) Then Cells(CL.Row, CC.Column).Value = 1: Exit For
Next CC 'prochaine colonne de la boucle 2
Next CL 'prochaine ligne de la boucle 1
End Sub