跳至主要内容

如何在Excel中显示/展示自动筛选条件?

Author: Xiaoyang Last Modified: 2025-05-07

自动筛选是Excel用户的一个有用功能,有时我们会应用自动筛选来根据多个条件筛选数据并将文件发送给其他人。在这种情况下,如果其他用户想知道您筛选的条件,他们该怎么办?

使用用户定义函数在工作表中显示/展示自动筛选条件

使用VBA代码在工作表中显示/展示自动筛选条件

使用Kutools for Excel在工作表中显示/展示自动筛选条件 good idea3


使用用户定义函数在工作表中显示/展示自动筛选条件

假设您有以下数据已根据某些条件进行了筛选,请参见截图:

A screenshot of filtered data in Excel with auto filter applied

现在我可以创建一个用户定义函数,将筛选条件显示到单元格中,请按以下步骤操作:

1. 按住ALT + F11键打开Microsoft Visual Basic for Applications窗口

2. 点击 插入 > 模块,并在模块窗口中粘贴以下宏:

Function AutoFilter_Criteria(Rng As Range) As String
'Updateby20140220
Dim str1 As String, str2 As String
Application.Volatile
With Rng.Parent.AutoFilter
    With .Filters(Rng.Column - .Range.Column + 1)
        If Not .On Then Exit Function
            str1 = .Criteria1
        If .Operator = xlAnd Then
            str2 = " AND " & .Criteria2
        ElseIf .Operator = xlOr Then
            str2 = " OR " & .Criteria2
        End If
    End With
End With
AutoFilter_Criteria = UCase(Rng) & ": " & str1 & str2
End Function

3. 然后保存并关闭此代码,在一个空行的空单元格中,例如单元格A1,输入此公式=AutoFilter_Criteria(A4)A4是筛选数据的页眉单元格),请参见截图:

A screenshot of entering the AutoFilter_Criteria formula in Excel

4. 然后按Enter键,然后选择单元格A1,拖动填充柄到需要包含此公式的右边的单元格,所有条件已显示到单元格中,请参见截图:

A screenshot of displaying the auto filter criteria in Excel

备注:如果在一列中有超过两个条件,此用户定义函数将不会给出正确的结果。


使用VBA代码在工作表中显示/展示自动筛选条件

在这里,我还可以谈谈一个有趣的VBA代码,它可以帮助您在工作簿的单元格中显示筛选条件。

1. 按住 ALT + F11键打开 Microsoft Visual Basic for Applications窗口

2. 点击插入 > 模块,并在模块窗口中粘贴以下宏:

VBA代码:在工作表中显示自动筛选条件

Sub ShowAutoFilterCriteria()
'Updateby20140219
Dim xFilter As AutoFilter
Dim TargetFilter As Filter
Dim TargetField As String
Dim xOut As String
Dim OutRng As Range
If ActiveSheet.AutoFilterMode = False Then
    Application.StatusBar = False
    Exit Sub
End If
xTitleId = "KutoolsforExcel"
Set OutRng = Application.Selection
Set OutRng = Application.InputBox("Cell", xTitleId, OutRng.Address, Type:=8)
Set xFilter = ActiveSheet.AutoFilter
For i = 1 To xFilter.Filters.Count
   TargetField = xFilter.Range.Cells(1, i).Value
   Set TargetFilter = xFilter.Filters(i)
   If TargetFilter.On Then
        On Error GoTo OutNext
        xOut = xOut & TargetField & TargetFilter.Criteria1
        Select Case TargetFilter.Operator
            Case xlAnd
            xOut = xOut & " And " & TargetField & TargetFilter.Criteria2
            Case xlOr
            xOut = xOut & " Or " & TargetField & TargetFilter.Criteria2
            Case xlBottom10Items
            xOut = xOut & " (bottom 10 items)"
            Case xlBottom10Percent
            xOut = xOut & " (bottom 10%)"
            Case xlTop10Items
            xOut = xOut & " (top 10 items)"
            Case xlTop10Percent
            xOut = xOut & " (top 10%)"
        End Select
    End If
Next
OutRng.Value = xOut
OutNext:
xOut = xOut & TargetField & "= Multiple Filters"
ErrorHandler:
Resume Next
End Sub

3. 然后按F5键运行此代码,将弹出一个提示框让您选择一个空单元格来放置条件,请参见截图:

A screenshot of the VBA prompt to select a blank cell for filter criteria

4. 然后点击OK,所有条件已显示在所选单元格中,如下所示:

A screenshot of auto filter criteria displayed in a cell

备注:

使用此VBA代码,如果您的条件在一列中超过两个,它将不会显示详细的筛选条件,而是显示如下:

A screenshot showing a column with multiple filter criteria in Excel


使用Kutools for Excel在工作表中显示/展示自动筛选条件

如果您安装了Kutools for Excel,您可以应用其超级筛选功能来筛选数据,同时您可以随时查看筛选条件。

Kutools for Excel 提供了超过 300 种高级功能,简化复杂任务,提升创造力与效率。 通过集成 AI 能力,Kutools 能够精准自动执行任务,让数据管理变得轻松简单。Kutools for Excel 的详细信息...         免费试用...

1. 点击 Kutools Plus> 超级筛选 以显示 超级筛选 功能。请参见截图:
A screenshot of the Kutools Super Filter option in Excel

2. 在 超级筛选 窗格中,点击Range selection button 以选择您要筛选的数据区域,然后勾选指定复选框以固定筛选范围。请参见截图:
A screenshot of selecting data range in the Super Filter pane

3. 在 超级筛选 窗格中,点击筛选组中的一行,然后在下拉列表中指定您需要的筛选条件,然后点击确定以完成条件设置。请参见截图:
A screenshot of specifying filter criteria in the Super Filter pane

4. 点击 筛选,所选数据已按条件筛选,同时,您可以查看筛选条件显示在 超级筛选 窗格中。请参见截图:
A screenshot of filtered data with visible criteria in the Super Filter pane

备注:您可以将筛选条件保存为方案,以便下次使用超级筛选工具。

1. 点击 保存当前筛选设置 按钮,在弹出的对话框中输入筛选名称。
A screenshot of saving the filter criteria scenario in Kutools

2. 当您下次想要使用此筛选设置时,点击菜单按钮,然后在 载入方案.
A screenshot of opening a saved filter criteria scenario in Kutools

Kutools for Excel - 通过超过300个必备工具,让Excel功能大幅提升。永久免费享受AI功能!立即获取

的子菜单中选择方案。

Kutools for Excel:超过 300 种实用工具触手可及!永久免费享受 AI 功能!立即下载!

最佳办公效率工具

🤖 Kutools AI 助手:基于智能执行生成代码创建自定义公式分析数据并生成图表调用 Kutools 函数等功能,彻底改变数据分析方式…
热门功能查找、高亮或标记重复项 | 删除空行 | 合并不丢失数据的列或单元格 | 四舍五入 ...
高级 LOOKUP多条件 VLookup | 多值 VLookup | 多表查找 | 模糊查找 ....
高级下拉列表快速创建下拉列表 | 从属下拉列表 | 多选下拉列表 ....
列管理器添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较区域和列 ...
精选功能网格聚焦 | 设计视图 | 增强编辑栏 | 工作簿与工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按列表发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/斜体/删除线...)...
排名前 15 的工具集12 种文本 工具添加文本删除特定字符等) | 50 多 种图表 类型甘特图等) | 40 多种实用 公式基于生日计算年龄等) | 19 种插入 工具插入二维码根据路径插入图片等) | 12 种转换 工具小写金额转大写汇率转换等) | 7 种合并与分割 工具高级合并行分割单元格等) | 还有更多...

使用 Kutools for Excel 提升您的 Excel 技能,体验前所未有的高效。 Kutools for Excel 提供超过 300 种高级功能来提高生产力并节省时间。 单击此处获取您最需要的功能...


Office Tab 将标签式界面引入 Office,让您的工作更加轻松

  • 在 Word、Excel、PowerPoint 中启用标签式编辑和阅读
  • 在同一窗口的新标签页中打开和创建多个文档,而不是在新窗口中进行操作。
  • 将您的生产力提升 50%,每天为您减少数百次鼠标点击!