Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Areas.Count <> 2 Then Exit Sub
Dim P1 As Range, P2 As Range, coul1&, coul2&, t
Set P1 = Intersect(Target.Areas(1)(1).EntireRow, [C:H])
Set P2 = Intersect(Target.Areas(2)(1).EntireRow, [C:H])
If P1.Row < 3 Or P2.Row < 3 Then Exit Sub
coul1 = P1(1).Interior.Color: coul2 = P2(1).Interior.Color
Application.EnableEvents = False
Union(P1, P2).Interior.ColorIndex = 3 'rouge
If MsgBox("Permuter " & P1.Address(0, 0) & " et " & P2.Address(0, 0) & " ?", 4) = 6 _
Then t = P1: P1 = P2.Value: P2 = t
P1.Interior.Color = coul1: P2.Interior.Color = coul2
Application.EnableEvents = True
End Sub