Isso é mais sobre o que é visível para você. Eu suspeito que tudo está funcionando bem, mas, porque você filtrou linhas, você não está vendo, mesmo na pasta! Isso ocorre porque o Excel deve estar (estou supondo) fazendo algo na linha inteira quando você filtra ...
Você tem duas opções para contornar isso e explicá-la ainda mais.
Supondo que você filtrou os dados da linha 1 para a 50. Você precisa fazer sua seleção, copiar (como você tem), mas cole após a linha 50 (com uma pasta normal). Você verá a pasta exatamente como deseja.
Se você colar nas mesmas linhas da tabela filtrada, não será possível ver a pasta "correta" até depois de remover o filtro (mas os valores colados estarão como você deseja.
Para colar no mesmo lugar (entre as linhas 1 e 50), clique com o botão direito e escolha paste special
- > paste picture
... Sim, ele será colado como uma imagem, então você não pode usá-lo para criar fórmulas, mas dependendo de suas necessidades, pode ser suficiente
Outra opção é colar apenas em células visíveis (não acho que isso vá ajudar você) ...
1) Copy the cells you want pasted.
2) Highlight range you want to paste in to
3) Go to Home ribbon, Editing box, Find & Select.
4) choose option - Go To Special
5) bottom right of the box choose Visible Cells only.
6) now paste.
Finalmente, da mesma fonte, a opção VBa (não testada)
Sub Copy_Filtered_Cells()
Set from = Selection
Set too = Application.InputBox("Select range to copy selected cells to", Type:=8)
For Each Cell In from
Cell.Copy
For Each thing In too
If thing.EntireRow.RowHeight > 0 Then
thing.PasteSpecial
Set too = thing.Offset(1).Resize(too.Rows.Count)
Exit For
End If
Next
Next
End Sub