Sub CopieFiltre1()
Application.ScreenUpdating = False
Dim P As Range, col%
With Sheets.Add(After:=Sheets(Sheets.Count))
.Name = "Extract_" & Format(Now, "yyyymmdd_hhmmss")
Sheets("Data").[A5].CurrentRegion.Copy .[A1]
Set P = .[A:F,I:I,N:N,R:R,W:Z,AB:AB] 'colonnes à conserver
For col = .[A1].CurrentRegion.Columns.Count To 1 Step -1
If Intersect(.Columns(col), P) Is Nothing Then .Columns(col).Delete
Next
.Columns.AutoFit
End With
End Sub
Sub CopieFiltre2()
Dim P As Range, col%
Application.ScreenUpdating = False
With Workbooks.Add.Sheets(1)
ThisWorkbook.Sheets("Data").[A5].CurrentRegion.Copy .[A1]
Set P = .[A:F,I:I,N:N,R:R,W:Z,AB:AB] 'colonnes à conserver
For col = .[A1].CurrentRegion.Columns.Count To 1 Step -1
If Intersect(.Columns(col), P) Is Nothing Then .Columns(col).Delete
Next
.Columns.AutoFit
.Parent.SaveAs ThisWorkbook.Path & "\Extract_" & Format(Now, "yyyymmdd_hhmmss") & ".xlsx" 'chemin d'accès à adapter éventuellement
.Parent.Close True
End With
End Sub