- ·上一篇:wps文字如何输入带圈数字图文教程
- ·下一篇:wps表格如何修改表格线颜色
WPS表格如何添加筛选唯一值功能
筛选功能是电子表格软件很重要的一块内容,无论是ET还是Excel,都具有强大的筛选功能,但比较遗憾的是,ET和Excel都没有“筛选唯一值”功能。接下来由小编为大家推荐WPS表格添加筛选唯一值功能的技巧,希望对你有所帮助!
WPS表格添加筛选唯一值功能的教程:
这里之所以说是模拟而不是实现,是因为,VBA是无法操作ET或Excel的筛选器的,所以我们只好退而求其次,用隐藏行的方法来模拟“筛选唯一值”。
这里给出VBA代码(最多可以处理32767行数据):
(这里给的是核心代码,不包括下图中创建按钮的代码)
Public Sub 筛选唯一值() \'最多可以处理32767行数据
Application.ScreenUpdating = False \'关闭屏幕更新,加快速度
Dim cell As Range, i As Long, rng As Range, only As New Collection
If TypeName(Selection) \"Range\" Then Exit Sub \' 选择对象不是单元格则退出
If Selection.Columns.Count > 1 Then
MsgBox \"只能选择一列数据!\", 0 + 64, \"天远筛选唯一值\"
Exit Sub
End If
Set rng = Intersect(ActiveSheet.UsedRange, Selection)
On Error Resume Next
For j = 1 To rng.Count \'遍历选区所有单元格
If rng(j) \"\" Then
only.Add rng(j).Value, CStr(rng(j).Value) \'逐个导入 Collection对象
End If
If Err 0 Then \'如果有错误(重复)
i = i + 1 \'累加变量
\'如果变量i为1则将 Selection(j)赋值给rng,否则将rng与 Selection(j)合并为一个Range对象
If i = 1 Then
Set cell = Selection(j)
Else
Set cell = Union(cell, rng(j))
End If
Err.Clear \'清除错误
End If
Next j
cell.EntireRow.Hidden = True \'隐藏所有符合条件的行
Application.ScreenUpdating = True
End Sub
复制代码
示例图如下: