我有一个由CommandButton1_Click执行的Excel VBA代码。以下是我在VBA代码末尾插入的条件。
If Range("D1").Value < 362 Then
Range("C1").Value = Range("C1").Value + 7
Range("D1").Value = Range("D1").Value + 7
Else
Range("C1").Value = Range("F2").Value
Range("D1").Value = 0
End If
我想重复CommandButton1_Click操作直到Range(&#34; D1&#34;)。值再次变为Zero。请帮忙。
答案 0 :(得分:2)
我认为您需要将CommandButton1_Click
方法的整个部分包裹在Do While ... Loop
中。
所以变换:
Sub CommandButton1_Click()
'body
End Sub
到
Sub CommandButton1_Click()
Do While Range("D1").Value <> 0
'body
Loop
End Sub
或者你可以更优雅:
Sub SomeSub()
'your CommandButton1_Click current body
End Sub
Sub CommandButton1_Click()
Do While Range("D1").Value <> 0
SomeSub
Loop
End Sub
答案 1 :(得分:1)
按照你自己的说法
Do Until Range("D1").Value = 0
If Range("D1").Value < 362 Then
Range("C1").Value = Range("C1").Value + 7
Range("D1").Value = Range("D1").Value + 7
Else
Range("C1").Value = Range("F2").Value
Range("D1").Value = 0
End If
Loop