循环已经运行的代码以简化它

时间:2017-07-11 14:56:45

标签: vba excel-vba excel

我想用两个单元格步骤循环这个代码,直到我到达AT44。是否有可能帮助我。我需要在16-18-20等小区运行它......直到44。

基本上,我在列AT中有一个If函数告诉我的宏清除AB列的内容并将其锁定或解锁,如果为false。

If Range("AT16") = "Vrai" Then
Range("AB16").ClearContents
Range("AB16").Locked = True
Else:
Range("AB16").Locked = False
End If

非常感谢!

1 个答案:

答案 0 :(得分:1)

只需使用步骤2的for循环

Sub test()
Dim i As Integer

For i = 2 To 64 Step 2
    Range("A" & i).Value = i
Next i

End Sub

将在活动表上的第2行,第4行等4上输出2。

在你的情况下:

For i = 16 to 44 step 2
    If Range("AT" & i ) = "Vrai" Then
        Range("AB" & i).ClearContents
        Range("AB" & i).Locked = True
    Else
        Range("AB" & i).Locked = False
    End If
Next i