一聚教程网:一个值得你收藏的教程网站

热门教程

WPS表格添加筛选唯一值功能教程

时间:2022-06-27 10:26:46 编辑:袖梨 来源:一聚教程网

ps: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-stroke-">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

  复制代码

  示例图如下:

WPS表格怎样添加筛选唯一值功能 三联WPS表格补上筛选唯一值功能教程WPS表格补上筛选唯一值功能教程WPS表格补上筛选唯一值功能教程WPS表格补上筛选唯一值功能教程

热门栏目