每次想在表格里找点数据,都得像玩“打地鼠”一样,一列一列地筛选,还得不停地调整表格,最后还得把筛选结果复制出来,真是累得不行!
更别提那些函数公式了,简直就是一群“小公主”,表格格式稍微一变,比如新增了一列,它们就“发脾气”,非得让我重新哄着调整一遍。
不过,好消息来了!听说有个超赞的方法,能让我摆脱这种繁琐的操作,实现一次设置,终身受益的筛选效果。听起来就像找到了“万能钥匙”,一下子就能打开所有数据的“宝箱”,真是太让人期待了!
先来看看动态效果图:
方法一:普通筛选大法
操作过程:
- 首先,选中你的5列数据区域。
- 点击【数据】选项卡中的【筛选】图标,瞬间给你的表格加上“搜索雷达”。
- 在任意一列的下拉箭头中,筛选文本框里输入想查找的关键字。
- 然后点击【确定】,再对数据进行复制粘贴到你有用到的表中。
优缺点:
- 优点:操作简单,不需要任何函数基础,适合新手小白。
- 缺点:如果数据量大,筛选速度可能会稍慢;而且每次只能筛选一列,想同时筛选多列的关键字?那得手动来几次了。
方法二:Filter函数新宠儿
操作过程:
- Excel 2021及以上版本的小伙伴注意啦!Filter函数可是你们的新宠儿。
- 如果只查找姓名列中的关键字,需要输入公式:
=FILTER(A2:E119,IFERROR(FIND(H1,A2:A119),0))
- 如果你想输入的关键字,能在在5列表格中查找出数据,不想去改函数公式,那么
输入=FILTER(你的数据范围, (你的第一列范围="关键字") (你的第二列范围="关键字")... (你的第五列范围="关键字"))。
=FILTER(A2:E119,IFERROR(FIND(H1,A2:A119),0) IFERROR(FIND(H1,B2:B119),0) IFERROR(FIND(H1,C2:C119),0) IFERROR(FIND(H1,D2:D119),0) IFERROR(FIND(H1,D2:D119),0))
这里的“ ”表示“或”的关系,只要有一列匹配就返回该行数据。
- 注意哦,如果表格增加一列,你就得改公式了哦。
优缺点:
- 优点:灵活度高,可以同时筛选多列的关键字;返回的是整个行的数据,方便后续处理。
- 缺点:对Excel版本有要求,低版本的小伙伴只能眼馋了;函数写法相对复杂,需要一定的函数基础。
方法三:代码小能手VBA
操作过程:
先在工作表中插入一个文本框,用来输入关键字。
放置好位置:
- 打开VBA编辑器。
- 点击你存放数据的那个工作表名,然后在右边输入两段代码:
Private Sub TextBox1_LostFocus()
If Len(TextBox1.Value) >= 1 Then
Call 查询数据
Else
Range("G3:K10000").ClearContents
End If
End Sub
Sub 查询数据()
Dim arr(), crr()
Range("G3:K10000").ClearContents
For Each Rng In Range([a2], [a2].End(xlDown))
n = n 1
ReDim Preserve arr(1 To n)
arr(n) = Join(Application.Transpose(Application.Transpose((Rng.Resize(1, 5).Value))))
Next
filterBrr = Filter(arr, TextBox1.Text)
If UBound(filterBrr) <= LBound(filterBrr) Then Exit Sub
For Each br In filterBrr
i = i 1
ReDim Preserve crr(1 To i)
crr(i) = Split(br)
Next
[g3].Resize(UBound(crr), 5) = Application.Transpose(Application.Transpose(crr))
End Sub
如果表格增加列,你只需要更改这两个地方,表格有几列就改几列,把结果的位置也改一下,不然会被数据覆盖,那样就可以一劳永逸了。
优缺点:
- 优点:自定义程度高,可以实现非常复杂的筛选逻辑;处理大数据时效率更高。
- 缺点:需要一定的编程基础
总结
好啦,三种模糊查找的方法就介绍到这里啦!是不是觉得Excel瞬间变得高大上了呢?
记得哦,选择最适合你的方法才是王道!普通筛选适合新手小白快速上手;Filter函数则是Excel新版本的宠儿,灵活度高;而代码小能手VBA则适合那些想要自定义筛选逻辑的大神们。
最后的最后,别忘了给我点个赞和分享哦!
你的支持就是我最大的动力啦!咱们下期再见啦~
评论 (0)