excel高级筛选VBA

怎么能实现,我在C5中输入PNC,下面的表格给我自动筛选号对应的PNC的那一行,其他行隐藏掉。多谢

第1个回答  2018-05-03

worksheet_change事件中输入以下代码:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("C5")) Is Nothing And Target.Count = 1 And Target <> "" Then
Rows.Hidden = False
   For i = 8 To Cells(65536, 2).End(xlUp).Row
      If Cells(i, 2) <> Cells(5, 3) Then
                  Rows(i).Hidden = True
        End If
    Next
    End If
End Sub

追问

谢谢,试了初步可以,有两个小问题:

    要是C5加了一个mid函数,就不行了,有什么办法么?

    我这个表不止这么几行,可以可以设置成对B列都可以删选?

追答

c5mid函数是什么意思?触发change事件的因素应该只能是改变单元格内容,而由公式引用的的值发生变化导至计算结果发生变化应该是不会触发事件的发生的。如果需要,可以设置成一个宏命令,并指定快捷键,人为去运行宏命令
至于第二个问题,代码可不是只针对这几行,是对B列8行以下所有有数据的行全部进行筛查的

本回答被网友采纳
第2个回答  2020-04-17
00:00
00:00
  • 2
  • 1.5
  • 1
  • 0.75
  • 0.5
X1
正在播放
相似回答