清除Microsoft Excel中所有筛选器的6种方法

清除Microsoft Excel中所有筛选器的6种方法

当您无法在 Microsoft Excel 工作表中看到数据集或表中的所有数据时,列中可能存在活动过滤器。阅读本文直到最后,了解清除 Excel 中所有过滤器的各种方法,以挖掘隐藏在过滤器中的过滤数据。

Excel 过滤器在深入研究大量数据集时非常有用。它们使您能够通过直观的界面快速将过滤条件应用于数据,无论是基于单列还是多列。

然而,除了这些优点之外,在某些情况下,启动消除 Excel 数据集中所有活动过滤器的过程变得势在必行。一个相关的例子是遇到同事的 Excel 文件,其中已经包含已应用的过滤器。

在这种情况下,只有过滤后的可见数据可用。如果您的目标是理解整个数据集,则清除应用的过滤器至关重要。个人忽略这一关键步骤的情况随后会导致数据分析结果出现偏差。

推荐:WordPress Dark Mode Ultimate插件

Excel 中的过滤器是什么?

Excel 筛选功能提供了一种将数据集中到特定子集的方法,从而简化了查找所需信息的过程。为了说明这一点,请考虑这样一个场景:您拥有各种产品的销售数据汇编。

利用过滤功能可以快速识别出表现优异的产品以及需要推动的产品。这些过滤器将其实用性扩展到数字和基于文本的数据集。

此外,它们与条件格式和数据透视表等其他功能的兼容性增强了它们的价值。

简而言之,过滤器是一种多功能工具,可显著简化 Excel 中的数据操作。您可以在以下位置找到 Excel 过滤器工具:

主页 编辑 筛选
主页 编辑 筛选

> 編輯 > 排序和过滤

数据排序和过滤
数据排序和过滤

数据 > 排序和过滤 > 筛选

如何在 Excel 中找出活动过滤器

有几种简单的方法可以快速识别过滤器对数据集的应用。验证这一点的最有效方法是简单地检查 Excel 状态栏。它是位于工作表左下角的灰色条带。

以下目视检查可以快速揭示过滤器是否正在使用:

状态栏上的 Excel 过滤模式
状态栏上的 Excel 筛选模式
  1. 地位酒吧 显示器 过滤模式 当工作表上有一个或多个过滤器处于活动状态时。
记录 Y 中的 X 的计数表示有源滤波器
记录数为 X(总记录数为 Y)表示过滤器处于活动状态
  1. 如果应用了过滤器,您将看到如下消息 “找到 5 条记录中的 3 条”。这表示由于应用了筛选,某些记录被隐藏了。

一旦移除或清除过滤器,这些状态栏指示就会消失。

已应用过滤器的图标
应用了滤镜的图标

另一个视觉指示器位于列标题内。列标题单元格右侧将显示一个过滤器图标,以表示过滤器已应用于该列。

清除 Excel 中所有筛选器的原因

这就是为什么您可能希望在开始数据分析之前清除 Excel 工作簿或工作表中的所有过滤器:

  1. 您正在处理共享 Excel 文件。其他协作者可能已应用适合其工作的过滤器。相同的过滤器可能不适用于您。因此,要应用您自己的过滤器,您必须先清除工作表中的所有过滤器。
  2. 如果您正在处理一个包含许多工作表的非常大的工作簿,并且每个工作表包含数千行,则过滤器会减慢数据分析工作的速度。
  3. 您不小心对数据集应用了几个过滤器。现在,您无法恢复未过滤的数据集,因为您不知道如何在 Excel 中清除所有过滤器。
  4. 删除过滤器对于准确的数据分析至关重要,因为继续使用过滤器可能会导致错误的见解和结论。
  5. 执行排序、分组或计算等任务时,从未过滤的数据集开始可确保获得准确的结果。
  6. 保持过滤器处于活动状态可能会导致对数据的误解,从而导致基于不完整信息的错误决策。
  7. 清除过滤器可保持数据的完整性,防止可见记录和隐藏记录之间出现差异。
  8. 活动过滤器可能会在输入新数据或进行编辑时无意中导致错误,从而导致意外结果。
  9. 清除过滤器可建立数据分析和报告的一致性,因为每个人都从同一点开始。

到目前为止,您已经全面了解了 Microsoft Excel 中的筛选工具。现在,下面介绍清除 Excel 中所有筛选器的所有常用且简单的方法:

手动清除列中的所有过滤器

手动清除 Excel 中的所有过滤器
手动清除 Excel 中的所有过滤器

当筛选后的表或数据集足够小时,可以尝试以下步骤:

  1. 单击列上的过滤器图标。
  2. 点击 清除“列名称”中的过滤器 上下文菜单上的按钮。
  3. 对右上角有过滤器图标的所有其他列重复上述操作。

如何在家中清除 Excel 中的所有筛选器

从 Excel 表中删除所有过滤器的另一种方法是使用 Microsoft 在“主页”选项卡中提供的两个不同选项。让我们探索下面的工作原理:

使用排序和过滤工具

清除所有列的过滤器
清除所有列的过滤器
  1. 前往 选项卡并导航至 編輯 堵塞。
  2. 在那里,点击 排序和过滤 按钮展开其菜单。
  3. 点击 清除 删除应用于表的所有过滤器。
关闭过滤
关闭过滤
  1. 如果要关闭过滤,请点击 筛选 图标。

使用清除工具

使用清除工具清除 Excel 中的所有过滤器
使用清除工具清除 Excel 中的所有过滤器
  1. 选择数据集的过滤器行或列标题行。
  2. > 編輯
  3. 在那里,点击 清除 下拉式菜单。
  4. 在上下文菜单中,选择 清除格式
  5. 数据集将失去过滤并且整个数据将显示出来。

上述步骤还将删除数据集的单元格格式。因此,如果您不介意重置格式,请尝试此方法。

推荐:TopPic主题响应式WordPress摄影作品集主题

如何使用数据选项卡清除所有过滤器

清除“数据”选项卡中的所有筛选
清除“数据”选项卡中的所有筛选

您还可以从“数据”选项卡中清除或关闭 Excel 数据集的过滤。操作方法如下:

  1. 前往 数据 标签。
  2. 导航至 排序和过滤 命令块。
  3. 点击 清除 立即删除所有活动过滤器。
  4. 点击 筛选 图标来关闭过滤。

键盘快捷键清除所有过滤器并重新应用

Excel 因其丰富的键盘快捷键而备受推崇。您可以使用键盘快捷键做几乎任何事情。以下是三种不同的快捷键,用于管理 Excel 工作表中的筛选。

清除年龄过滤器
清除年龄过滤器
  1. 使用箭头键突出显示已过滤的列。
  2. 现在,按 Alt + 向下箭头 键打开上下文菜单。
  3. C 删除所选列的过滤。

或者,要清除所有活动过滤器,只需按 Alt + A + C

如果你只是想关闭过滤,请按 Alt + A + 电视

如何使用 Excel VBA 清除所有过滤器

到目前为止,您已经探索了清除所有过滤器的各种方法,但其中大多数都需要某种手动操作。

如果您想自动化包含许多工作表的大型工作簿的流程,则必须依赖 Excel VBA 脚本。

如果您了解 VBA 脚本,那么您会发现该方法与您的技能非常匹配。但是,如果您不了解 VBA 脚本,也不用担心。

我将在下面逐步解释这些方法,以便您也可以按照自己的工作表中的步骤进行操作。

在使用本 Excel 教程中提到的 VBA 脚本之前,您必须在 Excel 桌面应用程序上激活“开发人员”选项卡。因为此选项卡控制与 VBA 宏相关的所有内容,例如访问 VBA 编辑器或宏对话框。

阅读这篇出色的文章来了解如何做到这一点:

在 Microsoft Excel 中添加“开发人员”选项卡的 2 种方法

创建 VBA 代码以清除过滤器
创建 VBA 代码以清除过滤器

现在您已经激活了“开发人员”选项卡,让我们开始使用 VBA 脚本方法:

  1. 提出 Excel VBA 编辑器 通过按下 Alt + A11 键。
  2. 点击 插入 按钮 VBA 编辑器 工具栏。
  3. 点击 模块 添加新模块。
  4. 将以下 VBA 脚本复制并粘贴到模块内:
Sub ClearAllFilters()
    On Error Resume Next
    ActiveSheet.ShowAllData
    On Error GoTo 0
End Sub
  1. 点击 节省 按钮来保存代码以供将来使用。
  2. 关上 Excel VBA 编辑器
运行 VBA 脚本
运行 VBA 脚本

现在,您需要运行代码来清除所选工作表上的所有过滤器。操作方法如下:

  1. Alt + F8 键调出 对话框。
  2. 选择 清除所有筛选条件 宏。
  3. 跑步 执行代码。

使用此脚本清除活动工作表中的表的所有过滤器:

清除所有筛选器 Excel 活动工作表
Sub ClearAllFilters()
    Dim ws As Worksheet
    Dim tbl As ListObject

    ' Clear filters from regular ranges
    On Error Resume Next
    ActiveSheet.ShowAllData
    On Error GoTo 0

    ' Clear filters from tables
    For Each ws In ThisWorkbook.Worksheets
        For Each tbl In ws.ListObjects
            tbl.AutoFilter.ShowAllData
        Next tbl
    Next ws
End Sub

清除 Excel 工作簿中的所有筛选器

清除 Excel 工作簿中的所有筛选器

您可以使用以下 VBA 脚本在不到一秒的时间内删除工作簿所有工作表中的所有活动过滤器。此外,该代码适用于普通数据集和表格。

Sub ClearAllFiltersInWorkbook()
    Dim ws As Worksheet
    Dim tbl As ListObject
    Dim rng As Range

    ' Clear filters from normal data ranges
    For Each ws In ThisWorkbook.Worksheets
        For Each rng In ws.UsedRange.SpecialCells(xlCellTypeVisible)
            rng.AutoFilter
        Next rng
    Next ws

    ' Clear filters from table data
    For Each ws In ThisWorkbook.Worksheets
        For Each tbl In ws.ListObjects
            tbl.AutoFilter.ShowAllData
        Next tbl
    Next ws
End Sub

保存 Excel 文件时清除所有过滤器

为了确保每个人在使用后都清除过滤器,您可以将以下 VBA 脚本添加到工作簿中。每当有人保存 Excel 文件时,脚本都会重置所有过滤器。

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    Dim ws As Worksheet
    Dim tbl As ListObject
    Dim rng As Range

    ' Clear filters from normal data ranges
    For Each ws In ThisWorkbook.Worksheets
        For Each rng In ws.UsedRange.SpecialCells(xlCellTypeVisible)
            rng.AutoFilter
        Next rng
    Next ws

    ' Clear filters from table data
    For Each ws In ThisWorkbook.Worksheets
        For Each tbl In ws.ListObjects
            tbl.AutoFilter.ShowAllData
        Next tbl
    Next ws
End Sub

关闭 Excel 文件时清除所有筛选器

关闭 Excel 文件时清除所有筛选器

下面提到的 VBA 脚本会在您关闭 Excel 文件时重置所有过滤器。因此,下次有人打开工作簿时,他们将看到表或数据集的所有数据。

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Dim ws As Worksheet
    Dim tbl As ListObject
    Dim rng As Range

    ' Clear filters from normal data ranges
    For Each ws In ThisWorkbook.Worksheets
        For Each rng In ws.UsedRange.SpecialCells(xlCellTypeVisible)
            rng.AutoFilter
        Next rng
    Next ws

    ' Clear filters from table data
    For Each ws In ThisWorkbook.Worksheets
        For Each tbl In ws.ListObjects
            tbl.AutoFilter.ShowAllData
        Next tbl
    Next ws
End Sub

如何使用 Office 脚本清除所有过滤器

Office Scripts 使用 TypeScript 编程语言在 Excel 中提供了更好的自动化选项。因此,您可以使用 Office Scripts 和 Power Automate 将 Excel 与其他 Microsoft 应用程序(如 Outlook、SharePoint 等)集成。

此外,Office Scripts 可在 Excel 桌面和 Web 应用程序上运行。

使用 Office 脚本
使用 Office 脚本

下面介绍如何使用此脚本工具清除 Excel 中的所有过滤:

  1. 点击 自动化 标签。
  2. 点击 新脚本 按钮里面 脚本工具 部分 自动化
  3. 将以下代码粘贴到 代码编辑器
function main(workbook: ExcelScript.Workbook) {
    // Get the active cell.
    const cell = workbook.getActiveCell();

    // Get the tables associated with that cell.
    // Since tables can't overlap, this will be one table at most.
    const currentTable = cell.getTables()[0];

    // If there is no table on the selection, end the script.
    if (!currentTable) {
        console.log("The selection is not in a table.");
        return;
    }

    // Get the table header above the current cell by referencing its column.
    const entireColumn = cell.getEntireColumn();
    const intersect = entireColumn.getIntersection(currentTable.getRange());
    const headerCellValue = intersect.getCell(0, 0).getValue() as string;

    // Get the TableColumn object matching that header.
    const tableColumn = currentTable.getColumnByName(headerCellValue);

    // Clear the filters on that table column.
    tableColumn.getFilter().clear();
}
  1. 点击 保存脚本 按钮。
  2. 点击 跑步 按钮来执行代码。

📝 笔记:在撰写本文时,只有您订阅了 Business Standard 或更好的 Microsoft 365 订阅,才能使用 Office Scripts 功能。如果您使用的是雇主提供给您的 Microsoft 365,他们必须从其 Microsoft 365 管理门户启用该功能。

结论

现在您知道如何清除 Excel 中的所有过滤器。根据 Excel 工作簿的大小,使用上面最适合的方法。

记得清除工作期间使用的所有过滤器,以便其他人在打开文件时可以完整查看文件。此外,告诉您的同事和同行在 Excel 工作表中使用过滤器时也这样做。

请不要忘记在下面留下评论,讲述您按照上述技术删除 Excel 中的过滤器的体验。

推荐:多功能AMP报纸杂志WordPress主题Vinkmag


发表评论