提示:其他語言是Google翻譯的。 你可以訪問 English 版本。
登入
x
or
x
x
註冊
x

or

如何在Excel中自動更新高級篩選結果?

當我們應用高級過濾器功能時,我們會發現過濾結果不會隨著條件更改而自動更改。 這需要我們再次應用高級篩選功能來獲得新的結果。 但是,您是否有任何更好的快速技巧來自動更新高級篩選結果,如以下Excel中所示的屏幕截圖?

使用VBA代碼自動更新高級篩選結果


使用VBA代碼自動更新高級篩選結果


根據需要更改標準時,以下VBA代碼可幫助您自動更新高級篩選結果,請按以下方式進行操作:

1。 右鍵單擊要自動過濾數據的工作表選項卡,然後選擇 查看代碼 從上下文菜單中,在打開的 Microsoft Visual Basic的應用程序 窗口中,將以下代碼複製並粘貼到空白模塊中:

VBA代碼:自動更新高級過濾結果:

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

注意:在上面的代碼中: A5:D21 是您要過濾的數據范圍, A1:C3 是要基於的過濾標準範圍。

2。 然後保存並關閉代碼窗口,當您更改條件範圍中的條件時,過濾後的結果將立即自動更新。


Kutools for Excel - 最佳辦公生產力工具提高80%的生產力

  • 重用: 快速插入 複雜的公式,圖表 以及你以前用過的任何東西; 加密單元格 密碼; 創建郵件列表 並發送電子郵件...
  • 超級方程式酒吧 (輕鬆編輯多行文字和公式); 閱讀佈局 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
  • 合併單元格/行/列 不丟失數據; 分裂細胞含量; 組合重複的行/列...防止重複的細胞; 比較範圍...
  • 選擇複製或唯一 行; 選擇空行 (所有細胞都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇......
  • 精確複製 多個單元格而不更改公式參考; 自動創建參考 多張表; 插入項目符號,複選框等等......
  • 提取文本,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
  • 超級過濾器 (將過濾方案保存並應用到其他工作表); 高級排序 按月/週/日,頻率等; 特殊過濾器 用粗體,斜體......
  • 結合工作簿和工作表; 根據鍵列合併表; 將數據拆分為多個表格; 批量轉換xls,xlsx和PDF...
  • 超過300強大的功能。 支持Office / Excel 2007-2019和365。 支持所有語言。 在您的企業或組織中輕鬆部署。 全功能60天免費試用。
kte tab 201905

Office選項卡為Office提供選項卡式界面,使您的工作更輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,Publisher,Access,Visio和Project。
  • 在同一窗口的新選項卡中打開並創建多個文檔,而不是在新窗口中。
  • 通過50%提高您的工作效率,每天為您減少數百次鼠標點擊!
官方底部
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.
    JBir · 29 days ago
    Is there a way to do this without using VBA?
  • To post as a guest, your comment is unpublished.
    Pierre · 29 days ago
    Hello, this code works perfectly, there is just one problem, the copy/paste fonction doesn't work anymore.
    How could it be fixed?
    Thanks in advance
  • To post as a guest, your comment is unpublished.
    klaus · 5 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é · 10 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 · 10 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.