Petua: Bahasa lain diterjemahkan Google. Anda boleh melawat English versi pautan ini.
Log masuk
x
or
x
x
Daftar Sekarang
x

or

Bagaimana untuk mengemas kini hasil penapis lanjutan secara automatik dalam Excel?

Apabila kami menggunakan ciri Penapis Lanjutan, kami akan mendapati hasil yang ditapis tidak akan berubah secara automatik dengan perubahan kriteria. Ini memerlukan kami menggunakan fungsi Penapis Lanjutan sekali lagi untuk mendapatkan hasil yang baru. Tetapi, adakah anda mempunyai helah yang baik dan cepat untuk mengemas kini hasil penapis lanjutan secara automatik seperti tangkapan skrin yang ditunjukkan dalam Excel?

Kemas kini hasil penapis lanjutan secara automatik dengan kod VBA


Kemas kini hasil penapis lanjutan secara automatik dengan kod VBA


Kod VBA berikut boleh membantu anda untuk mengemas kini hasil penapis lanjutan secara automatik apabila anda mengubah kriteria yang anda perlukan, sila lakukan seperti ini:

1. Klik kanan tab helaian yang anda mahu menapis data secara automatik, dan kemudian pilih Lihat Kod dari menu konteks, di buka Microsoft Visual Basic untuk aplikasi tetingkap, salin dan tampal kod berikut ke dalam Modul kosong:

Kod VBA: Kemas kini hasil penapis lanjutan secara automatik:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Range("A5:D21").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range _
("A1:C3"), Unique:=False
End Sub

Nota: Dalam kod di atas: A5: D21 adalah julat data yang anda ingin penapis, A1: C3 adalah pelbagai kriteria untuk penapis berdasarkan.

2. Kemudian simpan dan tutup tetingkap kod, sekarang, apabila anda mengubah kriteria dalam pelbagai kriteria, hasil yang ditapis akan dikemas kini secara automatik sekaligus.


Cadangan Alat Produktiviti untuk Excel

kte tab 201905

Kutools untuk Excel Membantu Anda Selalu Menyelesaikan Kerja di Hadapan Masa, dan Berdiri Daripada Orang

  • Lebih daripada ciri-ciri canggih 300 yang canggih, yang direka untuk senario kerja 1500, meningkatkan produktiviti oleh 70%, memberi anda lebih banyak masa untuk menjaga keluarga dan menikmati kehidupan.
  • Tidak perlu lagi menghafal formula dan kod VBA, berikan rehat dari otak anda sekarang.
  • Menjadi pakar Excel dalam minit 3, Operasi yang rumit dan berulang boleh dilakukan dalam beberapa saat,
  • Mengurangkan beribu-ribu operasi papan kekunci & tetikus setiap hari, mengucapkan selamat tinggal kepada penyakit pekerjaan sekarang.
  • 110,000 orang yang sangat berkesan dan pilihan syarikat 300 + yang terkenal di dunia.
  • Ciri-ciri penuh 60-hari adalah percubaan percuma. Jaminan wang balik 60 hari. Tahun 2 peningkatan dan sokongan percuma.

Membawa Browsing Tab dan Editing ke Microsoft Office, Jauh Lebih Berkuasa Daripada Tab Penyemak Imbas

  • Tab Pejabat direka untuk Aplikasi Pejabat Word, Excel, PowerPoint dan Lain-lain: Penerbit, Akses, Visio dan Projek.
  • Buka dan buat beberapa dokumen dalam tab baharu pada tetingkap yang sama, dan bukannya dalam tetingkap baru.
  • Meningkatkan produktiviti anda oleh 50%, dan mengurangkan beratus-ratus klik tetikus untuk anda setiap hari!
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    klaus · 1 months ago
    @Hannah: Yes, it is possible.
    In the following code the criteria is on the sheet "Filter".


    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Range("A5:D23").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
    Sheets("Filter").Range("A1:C3"), Unique:=False
    End Sub
  • To post as a guest, your comment is unpublished.
    invité · 6 months ago
    Ce code donne une erreur 1004 référence non valide. pouvez vous corriger le code proposé?
  • To post as a guest, your comment is unpublished.
    Christine · 7 months ago
    Bonjour, merci pour votre post qui m'aide énormément. Toutefois quel serait le code à ajouter pour coller le résultat dans un tableau d'une autre feuille de fichier et si possible pour au passage ne coller que certaines colonnes ?
    Pour être plus précise, en utilisant votre exemple je voudrais copier uniquement les colonnes "Product" et "Name" du résultat du filtre et ce dans une nouvelle feuille. Merci.
  • To post as a guest, your comment is unpublished.
    Hannah · 1 years ago
    Can I make the criteria come from a second sheet?
  • To post as a guest, your comment is unpublished.
    sumeet · 1 years ago
    it refreshes every time when any data changes.

    is it possible to refresh only when criteria changes.