Sub Fusion()
'touches Ctrl + A pour lancer la macro
Dim F1 As Worksheet, F2 As Worksheet
Dim derling1&, derlig2&
Set F1 = Sheets("donnée1")
Set F2 = Sheets("donnée2")
derlig1 = F1.[A65536].End(xlUp).Row
derlig2 = F2.[A65536].End(xlUp).Row
Application.ScreenUpdating = False
With Sheets("Feuil3")
'--- copies en Feuil3 et tri---
.Cells.Delete
F1.[A:J].Copy .[A1]
F2.[A:I].Copy .[K1]
.Range("R2:R" & derlig2).Cut .Range("A" & derlig1 + 1)
.Range("K2:S" & derlig2).Cut .Range("K" & derlig2 + 1)
.Range("O:O,R:R").Delete
.Range("A2:Q" & derlig1 + derlig2).Sort _
Key1:=.[A2], order1:=xlAscending, Header:=xlNo
'---analyse des doublons et copie des données---
For i = 2 To derlig1 + derlig2 - 2
If .Cells(i + 1, 1) = .Cells(i, 1) Then
.Cells(i, "K").Resize(, 7) = .Cells(i + 1, "K").Resize(, 7).Value
.Cells(i + 1, "R") = 1
End If
Next
'---suppression des doublons---
On Error Resume Next
.Columns("R").SpecialCells(xlCellTypeConstants).EntireRow.Delete
.Activate
End With
End Sub