Sub Filtre()
Dim plage As Range, h As Long
Application.ScreenUpdating = False
With Sheets("Feuil1")
.AutoFilterMode = False
.[A4].AutoFilter Field:=.[Plage2].Column, Criteria1:=">0"
Set plage = Union(.[Plage1], .[Plage2]).SpecialCells(xlVisible)
h = Intersect(plage, .[A:A]).Cells.Count
.AutoFilterMode = False
End With
With Sheets("Feuil2")
On Error Resume Next
.[B5:F5].Resize(Application.CountA(.[B:B]) - 3).Delete xlUp
On Error GoTo 0
.[B6:F6].Resize(h).Copy
.[B5:F5].Insert xlDown
plage.Copy .[B5]
With .[B5:F5].Resize(h)
.Borders.Weight = xlThin 'ou autrement :
'.Borders(xlInsideVertical).Weight = xlThin
.Borders(xlInsideHorizontal).LineStyle = xlNone
.FormatConditions.Add Type:=xlExpression, Formula1:="=MOD(LIGNE();2)=0"
.FormatConditions(1).Interior.ColorIndex = 15
End With
.Activate 'facultatif
End With
End Sub