有点问题。审计人员要求我们整个分类帐的整个Excel转储,这是大规模的(为什么?他们为什么要这样?)。它。最终设法通过几个工作簿为我导出它,但似乎有些行是重复的。似乎没有关于哪些模式的模式。我有一些代码可以删除完全重复的行,但是每个电子表格都非常庞大,我无法在整个数据集上运行它。
我已经确定了受影响的分类账,虽然我可以过滤然后将代码应用于这些代码。它仍然需要很长时间,但不会像通过眼睛'通过搜索所有这些一样年龄。会。
是否有办法将代码应用于我已过滤的单元格?我已经尝试过SpecialCells(xlCellTypeVisible),但我认为我将它添加到错误的位置,因为我的宏仍在搜索整个工作簿。
我添加SpecialCells之前的原始代码如下:
Dim ColN As Long
Dim MyS As Worksheet: Set MyS = ActiveSheet
Dim MyR As Range: Set MyR = MyS.Cells(1, 1).CurrentRegion
Dim NumCol As Long: NumCol = MyR.Columns.Count
Dim MyArray As Variant: ReDim MyArray(0 To NumCol - 1)
For ColN = 1 To NumCol
MyArray(ColN - 1) = ColN
Next
MyR.RemoveDuplicates Columns:=(MyArray), Header:=xlYes
Dim rowcount As Long, i As Long, j As Long, k As Boolean
rowcount = MyR.Rows.Count
For i = rowcount To 1 Step -1
k = 0
For j = 1 To NumCol
If MyR.Value2(i, j) <> "" Then
k = 1
Exit For
End If
Next j
If k = 0 Then
MyR.Rows(i).Delete Shift:=xlUp
End If
Next I
Application.ScreenUpdating = True
非常感谢。
答案 0 :(得分:1)
For i = rowcount To 1 Step -1
k = 0
For j = 1 To NumCol
If MyR.Value2(i, j) <> "" and Rows(I, j).Hidden = false Then
我在打电话,所以我无法测试。