Note: The other languages of the website are Google-translated. Back to English

在Excel中打開,保存或關閉工作簿時如何清除篩選器?

假設您的工作簿中有多個包含過濾數據的工作表。 要清除所有過濾器,您需要檢查不同工作表中的過濾列表,然後手動將它們一一清除。 這很煩人! 在本文中,我們將向您展示在 Excel 中打開、保存或關閉工作簿時清除過濾器的幾種方法。

在Excel中打開工作簿時清除過濾器
在Excel中保存工作簿時清除過濾器
在Excel中關閉/退出工作簿時清除篩選器


在Excel中打開工作簿時清除過濾器

本節討論打開工作簿時清除所有工作表中的篩選器。 請執行以下操作。

1.在工作簿中,您需要在打開時自動清除所有過濾器,請按 其他 + F11 鍵打開 Microsoft Visual Basic for Applications 窗口。

2。 在裡面 Microsoft Visual Basic for Applications 窗口,請雙擊 的ThisWorkbook 在左邊 專案 窗格,然後將以下VBA代碼複製並粘貼到 本工作簿(代碼) 窗口。 看截圖:

VBA代碼:打開工作簿時清除所有過濾器

Private Sub Workbook_Open()
'Updated by Extendoffice 20221012
    Dim ws As Worksheet
    For Each ws In Worksheets
        If ws.AutoFilterMode Then
            ws.ShowAllData
        End If
    Next ws
End Sub

3。 按 其他 + Q 退出鍵 Microsoft Visual Basic for Applications 窗口。

4。 點擊 文件 > 另存為。 在彈出 另存為 對話框中,指定一個文件夾來保存此工作簿,然後根據需要在其中命名 文件名 框,然後選擇 Excel啟用宏的工作簿 選項從 保存類型 下拉列表,最後單擊 節省 按鈕。

從現在開始,當打開這個啟用宏的工作簿時,這個工作簿中的所有過濾器都會被自動清除。


在Excel中保存工作簿時清除過濾器

您可以在每次保存時清除當前工作簿中的所有過濾器。

1.在工作簿中,您需要自動清除所有過濾器,請按 其他 + F11 鍵打開 Microsoft Visual Basic for Applications 窗口。

2。 在裡面 Microsoft Visual Basic for Applications 窗口,請雙擊 的ThisWorkbook 在左邊 專案 窗格,然後將以下VBA代碼複製並粘貼到 本工作簿(代碼) 窗口。 看截圖:

VBA代碼:保存工作簿時清除過濾器

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'Updated by Extendoffice 20221012
    Dim ws As Worksheet
    For Each ws In Worksheets
        If ws.AutoFilterMode Then
            ws.ShowAllData
        End If
    Next ws
End Sub

3。 按 其他 + Q 退出鍵 Microsoft Visual Basic for Applications 窗口。

從現在開始,保存工作簿時,將自動清除所有過濾器。


在Excel中關閉/退出工作簿時清除篩選器

最後一部分,我們將向您展示在關閉或退出工作簿時如何清除工作表中的所有過濾器。

1.打開您需要自動清除所有過濾器的工作簿,然後按 其他 + F11 鍵打開 Microsoft Visual Basic for Applications 窗口。

2。 在裡面 Microsoft Visual Basic for Applications 窗口,請雙擊 的ThisWorkbook 在左邊 專案 窗格,然後將以下VBA代碼複製並粘貼到 本工作簿(代碼) 窗口。 看截圖:

VBA代碼:關閉/退出工作簿時,清除工作表中的所有篩選器

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Dim ws As Worksheet
    For Each ws In Worksheets
        If ws.AutoFilterMode Then
            ws.AutoFilterMode = False
        End If
    Next ws
End Sub

備註:如果您只想清除當前工作表中的過濾器,請使用下面的VBA代碼。

VBA代碼:關閉工作簿時清除活動工作表中的篩選器

Private Sub Workbook_BeforeClose(Cancel As Boolean)
'Updated by Extendoffice 20221012
    Dim ws As Worksheet
    Set ws = ActiveSheet
        If ws.AutoFilterMode Then
            ws.ShowAllData
        End If
End Sub

3。 按 其他 + Q 退出鍵 Microsoft Visual Basic for Applications 窗口。

從現在開始,單擊工作簿中的“關閉”按鈕後,將自動清除所有篩選器。


相關文章:


最佳辦公效率工具

Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%

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

Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
officetab底部
按評論排序
留言 (6)
還沒有評分。 成為第一位評論!
網站主持人對此評論進行了最小化
此解決方案不會“清除”自動過濾器,它會完全刪除它們。
要重置過濾器並為下一個會話保留它們,請將 ws.AutoFilter.ShowAllData 替換為 ws.AutoFilterMode = False
網站主持人對此評論進行了最小化
謝謝你的評論! 這正是我的電子表格所需要的。 非常感激!
網站主持人對此評論進行了最小化
我在關閉/退出工作簿時嘗試了清除工作表中的所有過濾器,但它根本不起作用,我們需要做什麼嗎?
網站主持人對此評論進行了最小化
嗨,
除了我們展示的步驟外,不需要其他操作。 您使用的是哪個 Excel 版本?
網站主持人對此評論進行了最小化
Hoe kan ik wel de "filterknoppen" behouden?
網站主持人對此評論進行了最小化
嗨圖爾,
帖子中的 VBA 代碼已更新。 帶來不便敬請諒解。
這裡還沒有評論
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點

關注我們

版權所有©2009 - 萬維網。extendoffice.com。 | 版權所有。 供電 ExtendOffice。 |
Microsoft和Office徽標是Microsoft Corporation在美國和/或其他國家的商標或註冊商標。
受Sectigo SSL保護