2016-02-29 63 views
0

我有以下幾點:刪除行單元格中的內容與環

For i = 1 To 400: 
    If Cells(i, 7) = "Client" Then 
    Cells(i, 1).EntireRow.Delete 
    End If 
Next i 

問題是說,我有兩個小區(10,7)和細胞(11,7)Client。 行(10)被刪除後,行(11)變成新行(10),我正在尋找行(11)中的Client,我不會找到它(除非客戶端在行中)從一開始),所以我最終有很多行沒有刪除。

+0

考慮:選擇所有要刪除的行,然後發出刪除一次;在循環之外。 – xQbert

回答

2

插入或刪除Excel表中的行應該從最後一行開始。

For i = 400 To 1 Step -1 
    If Cells(i, 7) = "Client" Then Cells(i, 1).EntireRow.Delete 
Next i 
0

如果你在if條件中減去變量i,它是否工作。

例子:

For i = 1 To 400 
    If Cells(i, 7) = "Client" Then 
     Cells(i, 1).EntireRow.Delete 
     i = i – 1 
    End If 
Next i 
+0

小心,'對於我= 1到400:'不需要「**:**」。讓我覺得Python –

相關問題