使用工作表名称和删除隐藏行自动过滤

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用工作表名称和删除隐藏行自动过滤相关的知识,希望对你有一定的参考价值。

我想基于过滤器从excel中删除数据。根据具有指定列ex C的工作表名称过滤数据,并删除隐藏值。

我打算根据工作表名称保留数据,我已尝试使用循环,但需要很长时间才能进行处理。

wb.Activate
wb.Sheets("PMCC 1").Select
For Each ws In wb.Worksheets
    ws.Activate
    index = index + 1
    If index <= 10 Then
        irow = ws.Cells(Rows.Count, 1).End(xlUp).Row

        newtemp = Replace(ws.Name, " ", "#0")
        For J = irow To 2 Step -1
            If ws.Cells(J, 1) <> newtemp Then
                ws.Cells(J, 1).EntireRow.Delete
            End If
        Next J
    Else
        irow = ws.Cells(Rows.Count, 1).End(xlUp).Row

        newtemp = Replace(ws.Name, " ", "#")
        For J = irow To 2 Step -1
            If ws.Cells(J, 1) <> newtemp Then
                ws.Cells(J, 1).EntireRow.Delete
            End If
        Next J
    End If

Next ws

MsgBox ("Deleted")

以上是关于使用工作表名称和删除隐藏行自动过滤的主要内容,如果未能解决你的问题,请参考以下文章

VBA自动过滤复制值,去重并粘贴到其他工作表中

在VBA中将行从工作表复制和删除到多个工作表

使用具有动态范围的自动过滤器

根据另一个工作表中的可见范围删除行

vba,如何从列表框中的工作表中删除过滤后的数据

Vue - 表过滤器的性能问题?