对于i = 1,跳过几个点

时间:2017-07-21 02:39:20

标签: excel vba

我有一个for循环,但是当我检查结果时,有一些行被跳过。

是否存在任何可能导致循环没有看到每个#的结果的人。

似乎总是跳过包含数字3的同一行和包含数字6的一行。我将使用相同的数字正确运行其他行。

它应该会看到一行包含" 3 SHEETS"例如,复制该行并在其下方插入2行并粘贴。所以有3个重复的行,我最终重命名为Descriptions (SHEET 1)等。

在我的电子表格中,它运行在整数2,4,3(然后跳过2)上运行13(然后跳过3)并按顺序运行7,如果这有助于任何。我有另一个宏做了一些重命名,并击中所有"表格"所以我知道这不是一个额外空间或其他问题。

Sub ExpandRows()
Application.ScreenUpdating = False
Dim ws As Worksheet
Dim aCell As Range
Dim i As Integer

Set ws = ThisWorkbook.Sheets("Drawing Index")

With ws
For i = 1 To 99
    Set aCell = .Columns(1).find(What:=i & " SHEETS", LookIn:=xlValues, _
                LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
                MatchCase:=False, SearchFormat:=False)
    If Not aCell Is Nothing Then
        aCell.EntireRow.Copy
        aCell.Resize(i - 1).Insert
    End If
Next
End With
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub

0 个答案:

没有答案