行删除多个表格中的循环

时间:2016-10-13 19:29:17

标签: excel vba excel-vba macros

我正在尝试"自动"使用下面这个简单的代码清理几个工作表。如果我的数组中只有一个项目,但代码有效,但只要我放两个或更多项目就会删除最后一个项目上的所有内容(" TestMA"在这种情况下)。

Dim SheetsArray As Sheets
Set SheetsArray = ActiveWorkbook.Sheets(Array("TestCS", "TestMA"))
For Each msheets In SheetsArray
    With msheets

    i = 8
    Do While i < 600
        If .Cells(i, 2) = "" Then
            Rows(i).Delete Shift:=xlUp   '''''HERE IS THE PROBLEM
            i = i - 1
        End If
        i = i + 1
    Loop  

    End With
Next msheets

我已确定问题出在行(i)。删除Shift:= xlUp行。

帮助!!

1 个答案:

答案 0 :(得分:1)

而不是

Rows(i).Delete Shift:=xlUp   '''''HERE IS THE PROBLEM

使用

.Rows(i).Delete Shift:=xlUp   '''''NOTE THE INITIAL PERIOD