ActiveSheet.ListObjects("Tablo1").Range.AutoFilter Field:=2, Criteria1:=Sheets("Sayfa2").Range("E1")
sizin yazdığınız kodda değiştirdiğim tek satır bu.
şimdi denedim range kullanılınca düzün şekilde süzdü mesela sayfa2.E1 hücresini süzülecek kriter olarak atadım, kodu aşağıdaki şekilde yazıp sayfa1.B sütunundan farklı değerleri sayfa2.E1'e yapıştırıp butona bastığımda süzme ve kopyalamayı düzdün şekilde yaptı