Excel VBA计数循环数

时间:2019-01-15 00:20:42

标签: excel vba

我有一个电子表格,该电子表格已汇总在一起,以随机填充一系列针对各队的评委名单。法官向团队的分配取决于许多标准。为了使其正常工作,它会为每个判断对递增分配随机数,循环遍历代码,直到满足所有条件为止。问题是,有时,根据数字的初始分配,它永远不会达到满足所有条件的地步,因此请不断循环。我到处都看过,但是找不到任何可行的方法-有没有人拥有可以计算代码循环次数的代码,如果达到阈值(例如100个循环),它会重新开始原始代码?我没有在这篇文章中包含任何代码,因为我拥有的随机数太大了,并且与这个问题没有真正的联系,而且使用循环计数器还远远没有取得成功。鉴于该论坛的专业知识,我怀疑答案会很容易,而且很容易做到。在我这一刻。

1 个答案:

答案 0 :(得分:1)

又快又脏,也许像这样:

Dim maxcnt as Integer
Dim alldone as Boolean
alldone = False
Do While Not alldone
    For Each Team in AllTeams
        maxcnt = maxcnt + 1
        If maxcnt > 100 Then Exit For
        '==============================
        ' Your code logic
        ' goes here, and when
        ' all done, does this:
        alldone = True
        If alldone Then Exit For
        '==============================
    Next
    If alldone And maxcnt < 100 Then Exit Do
Loop
MsgBox "Job Completed"

您可能可以对此进行重大改进,但是可以直接使用...