小编Akh*_*hil的帖子

检查所有列后删除重复的行

我已经编写了下面的宏来检查所有列后删除重复的行.基于逻辑,我认为它工作正常,但输出不正确,应该显示的一些行被删除.任何人都可以帮助我吗?

在运行此宏之前,我有另一个宏来按几列对数据进行排序,以确保将相似的行组合在一起,因此宏可以考虑到这一点,并且只检查其上方的行而不是检查所有行?非常感谢任何帮助!

Sub Delete_Repeated_Rows()
Dim Rng As Range
Dim ColumnCounter As Integer

Set Rng = ActiveSheet.UsedRange.Rows

'Using ColumnCounter to hold total number of cells that match. If all of them match, delete row'

 For r = Rng.Rows.Count To 1 Step -1
    ColumnCounter = 0
    For Col = Rng.Columns.Count To 1 Step -1 'Loop through columns and find matches'
        If Application.WorksheetFunction.CountIf(Rng.Columns(Col), Rng.Cells(r, Col)) > 1 Then
            ColumnCounter = ColumnCounter + 1
        End If
    Next Col

    If ColumnCounter = Rng.Columns.Count Then
        Rng.Rows(r).EntireRow.Delete …
Run Code Online (Sandbox Code Playgroud)

excel vba duplicates excel-vba

0
推荐指数
1
解决办法
3087
查看次数

标签 统计

duplicates ×1

excel ×1

excel-vba ×1

vba ×1