Salut
Le fait que tu vois ton entête revenir plusieurs fois est du fait de cette ligne
Set rngSelect = ActiveCell.CurrentRegion.SpecialCells(xlCellTypeVisible)
en effet ici tu demande a excel de sélectionner l'ensemble de tes cellules visibles, l'entete est visible que je sache
Il faudrait verifier e nombre de ligne contenu dans
ActiveCell.CurrentRegion.SpecialCells(xlCellTypeVisible)
, peut etre en utilisant
ActiveCell.CurrentRegion.SpecialCells(xlCellTypeVisible).Rows.Count
si nbrLigne=1, on sort de la macro, le tableau ne contient que l'entete, aucun resultat au filtre.
si nbrligne>1, il faut modifier la selection pour ne pas prendre l'entete
ActiveCell.CurrentRegion.SpecialCells(xlCellTypeVisible).resize(ActiveCell.CurrentRegion.SpecialCells(xlCellTypeVisible).Rows.Count-1,ActiveCell.CurrentRegion.SpecialCells(xlCellTypeVisible).columns.Count).offset(1,0)
Je n'ai pas testé mais ce doit être un truc comme ça en fait le resize reduit la taille de la slection d'une ligne (on perd les donnée de la derniere ligne visible du tableau) et l'Offset decale la selectiond'une ligne vers le bas, on recupere les données de la derniere ligne et on abandonne celles de la 1er (l'entete si tu suis toujours ^^).
A++
Qwaz
Partager