电脑教程
位置:首页>> 电脑教程>> WPS教程>> WPS表格怎样添加筛选唯一值功能

WPS表格怎样添加筛选唯一值功能

  发布时间:2022-05-15 21:57:49 

标签:功能,的是,筛选,表格,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

复制代码

示例图如下:

0
投稿

猜你喜欢

手机版 电脑教程 asp之家 www.aspxhome.com