2016-10-13 56 views
-1

我想用下面这个简单的代码“自动”清理几个工作表。如果我的数组中只有一个项目,但是只要我放置两个或多个项目,就会删除最后一项(本例中为“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).Delete Shift:= xlUp line。

帮助!!

回答

1

而不是

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

使用

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

我尝试这样做,它并没有为我工作..好像没改变什么。 – MM117