Option Explicit
Sub test()
Dim a, b(), w(), i As Long, j As Long, n As Long, e, txt As String
With CreateObject("Scripting.Dictionary")
.CompareMode = 1
For Each e In Array("1", "2")
a = Sheets(e).Range("a2").CurrentRegion.Value
For i = 2 To UBound(a, 1)
txt = Join(Array(a(i, 1), a(i, 6)), Chr(2))
If Not .exists(txt) Then
ReDim w(1 To 7)
w(1) = a(i, 1)
For j = 6 To 11
w(j - 4) = a(i, j)
Next
.Item(txt) = w
Else
w = .Item(txt)
For j = 7 To 11
w(j - 4) = w(j - 4) + a(i, j)
Next
.Item(txt) = w
End If
Next
Next
ReDim b(1 To .Count + 1, 1 To 7)
n = n + 1
b(n, 1) = a(1, 1)
For j = 6 To 11
b(n, j - 4) = a(n, j)
Next
For Each e In .keys
w = .Item(e)
n = n + 1
For j = 1 To UBound(.Item(e))
b(n, j) = .Item(e)(j)
Next
Next
End With
Application.ScreenUpdating = False
With Sheets("Feuil1").Cells(1).Resize(n, UBound(b, 2))
.CurrentRegion.Clear
.Value = b
.Cells.Replace What:="0", Replacement:="", LookAt:=xlWhole, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
.Font.Name = "calibri"
.Font.Size = 10
.VerticalAlignment = xlCenter
.BorderAround Weight:=xlThin
.Borders(xlInsideVertical).Weight = xlThin
With .Rows(1)
.BorderAround Weight:=xlThin
.HorizontalAlignment = xlCenter
.Interior.ColorIndex = 38
With .Offset(, 2).Resize(, .Columns.Count - 2)
.Interior.ColorIndex = 40
End With
With .Resize(, 2)
.Interior.ColorIndex = 36
End With
End With
.Columns.AutoFit
End With
Application.ScreenUpdating = True
End Sub