在 Excel 中筛选“(即查找以特定字符或字符串结尾的数据),主要取决于你使用的 Excel 版本,以下是几种常用且高效的方法:
使用“文本筛选”功能(最简单,适用于所有版本)
这是最直观的方法,不需要输入复杂公式。
- 选中包含数据的列标题。
- 点击 “数据” 选项卡 -> “筛选”。
- 右侧的下拉箭头。
- 选择 “文本筛选”(如果是数字或日期,则选择对应的筛选类别,如“数字筛选”)。
- 选择 “结尾是”。
- 在弹出的对话框中,输入你想要筛选的结尾字符(
.jpg或北京)。 - 点击 “确定”。
注意:此方法区分大小写吗?通常不区分,但具体行为可能因版本略有差异,如果需要精确匹配,建议使用方法二。
使用 FILTER 函数(推荐,适用于 Excel 2021 或 Microsoft 365)
如果你希望动态生成一个筛选后的新列表,可以使用 FILTER 函数结合 RIGHT 或 RIGHTB 函数。
假设:
- 数据在
A2:A100 - 你想筛选以
.xlsx结尾的文件名
公式:
=FILTER(A2:A100, RIGHT(A2:A100, 4) = ".xlsx")
解释:
RIGHT(A2:A100, 4):提取每个单元格右侧的 4 个字符。= ".xlsx":判断是否等于.xlsx。FILTER:返回满足条件的整行数据。
提示:如果结尾长度不固定,可以使用
SEARCH或FIND结合LEN函数,但较为复杂,更通用的方式是使用ISNUMBER(SEARCH(".xlsx", A2:A100)),但这会匹配“包含”而非严格“。
使用通配符 + 高级筛选(适用于旧版 Excel)
如果你使用的是 Excel 2019 或更早版本,且不想用公式,可以使用“高级筛选”。
- 在一个空白区域(
C1)设置条件:- 在
C1输入与你要筛选的列相同的标题(文件名”)。 - 在
C2输入条件:=结尾字符
要筛选以.jpg结尾的,输入:=.jpg
- 在
- 点击 “数据” 选项卡 -> “高级”(在“排序和筛选”组中)。
- 在弹出的对话框中:
- 列表区域:选择你的原始数据范围(如
A1:A100)。 - 条件区域:选择你设置的条件区域(如
C1:C2)。 - 选择 “将筛选结果复制到其他位置” 或直接在原处筛选。
- 列表区域:选择你的原始数据范围(如
- 点击 “确定”。
关键点: 是通配符,代表任意数量的字符。
=.jpg表示“以 .jpg 。
使用 VBA 宏(适用于需要频繁操作或复杂逻辑)
如果你经常需要筛选,可以录制一个宏或编写简单 VBA 代码。
Sub FilterByEnd()
Dim ws As Worksheet
Set ws = ActiveSheet
' 假设数据在 A 列,从 A1 开始,标题在 A1
With ws.Range("A1").CurrentRegion
.AutoFilter Field:=1, Criteria1:=".jpg", Operator:=xlFilterValues
End With
End Sub
总结建议
| 场景 | 推荐方法 |
|---|---|
| 快速手动筛选 | 文本筛选 → 结尾是 |
| 动态生成新列表(Office 365/2021+) | FILTER 函数 |
| 旧版 Excel + 需要精确控制 | 高级筛选 + 通配符 |
| 自动化重复任务 | VBA |
大多数用户推荐使用 方法一,因为它无需记忆公式,操作直观,如果你需要自动化或动态结果,则选择 方法二。
首发原创文章,作者:世雄 - 原生数据库架构专家,如若转载,请注明出处:https://idctop.com/article/485076.html



