Pie*_*ter 6 excel vba excel-vba
我有一个Do .. while循环,其中两个For ..循环嵌套; 第一个For ..循环从1到X计数,第二个循环从X向下计数到1.这是目前无限重复的.
现在,我希望用户能够"中断"这个无限循环,并且程序在循环中断时执行XYZ.
我尝试使用切换按钮与Do .. While循环组合,但在上述循环运行时,不接受任何输入.如果代码正在运行循环,则单击时按钮的状态不会更改.
任何建议都非常感谢.
chr*_*sen 10
关键是DoEvents在循环中包含一个.这允许Excel在运行代码时处理类似按钮单击的操作
这是一个大纲.将宏指定ButtonClick给按钮. Main将无限期地运行,直到单击该按钮.
Option Explicit
Dim bBreak As Boolean
Sub ButtonClick()
bBreak = True
End Sub
Sub Main()
Dim X As Long
Dim i As Long
bBreak = False
Do While True
X = 1000
For i = 1 To X
If bBreak Then
Exit Do
End If
DoEvents
Next
For i = X To 1 Step -1
If bBreak Then
Exit Do
End If
DoEvents
Next
Loop
If bBreak Then XYZ
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6932 次 |
| 最近记录: |