Function copyresultperfo()
Dim Adresse As String
For Each GPN In Range("GPN")
Sheets("Perfo").Activate
ActiveSheet.ListObjects("TablePerfo").Range.AutoFilter 'enlève les filtres existants
ActiveSheet.ListObjects("TablePerfo").Range.AutoFilter 1, GPN ' filtre la colonne A
'décale la plage pour ne pas prendre la ligne d'entêtes
'reduit la plage d'une ligne pour compenser le décalage
'Copie les lignes restantes et qui sont visibles
ActiveSheet.ListObjects("TablePerfo").Range.Offset(0). _
Resize(ActiveSheet.ListObjects("TablePerfo").Range.Rows.Count - 1). _
SpecialCells(xlCellTypeVisible).Copy
With ThisWorkbook.Sheets("Data")
Adresse = .Cells(50, Columns.Count).End(xlToLeft).Offset(0, 1).Address
MsgBox "la Dernière Cellule non Vide de la Ligne est " & Adresse
Cells(50, Columns.Count).End(xlToLeft).Offset(0, 1).Select
.Paste
End With
Next GPN
'revient à un affichage normal
ActiveSheet.ListObjects("TablePerfo").Range.AutoFilter
End Function