Есть ли способ наложить ограничение по времени для кода в VBA?

Мне было интересно, есть ли у кого-нибудь опыт наложения временных ограничений на разделы кода. Я запрограммировал поисковую систему в таблицу Excel в VBA, и в ней есть раздел кода, который удаляет повторяющиеся результаты. Теперь эта часть может иногда длиться довольно долго, если учитывать самые смутные критерии поиска. Поэтому я хотел бы установить ограничение по времени для этой операции. Я везде искал решение и пытался использовать OnTime, но, похоже, он работает не так, как мне нужно. В идеале яМне нравится введенный лимит времени, а затем, когда он достигнут оператора GoTo, чтобы переместить его дальше в коде. Из того, что я прочитал, OnTime не будет прерывать операцию, но будет ждать, пока она не закончится, это не то, что я хочу.

Спасибо за помощь ребята. AmyI»

мы добавили мой код:

Sub RemoveDuplicates()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Application.EnableEvents = False
'Code called upon through the other macros which will remove duplicates from all the   types of search.
Application.StatusBar = "Removing Duplicates...."

Dim k As Integer
Dim SuperArray As String
Dim CheckingArray As String
Dim Duplicate As Boolean
Dim i As Integer
Dim j As Integer
Dim m As Integer
Dim Endrow As Integer
Dim Endcolumn As Integer
Dim w As Integer
Dim x As Integer
Dim n As Integer

w = 1
x = 9

Endcolumn = Module6.Endcolumn(x)
Endrow = Module6.Endrow(w)

If Worksheets("Search Engine").Cells(9, Endrow) = "Percentage Similarity" Then
    Endrow = Endrow - 1
End If

    For i = 9 To Endcolumn

        j = 1
        k = i + 1

        Do While j  Endrow + 1
            SuperArray = Cells(i, j) & Superstring
            Superstring = SuperArray
            j = j + 1
        Loop

        For k = k To Endcolumn
            m = 1
            Do While m  Endrow
                CheckingArray = Cells(k, m) & Uberstring
                Uberstring = CheckingArray
                m = m + 1
            Loop
            If Uberstring = Superstring Then
            n = 1
                Do While n  Endrow + 1
                If Worksheets("Search Engine").Cells(k, n).Interior.ColorIndex = 37 Then
                    Worksheets("Search Engine").Cells(i, n).Interior.ColorIndex = 37
                End If
                n = n + 1
                Loop
                Rows(k).Clear
            End If
            Uberstring = -1
        Next k
        Superstring = -1
    Next i


Do While i > 9
    If Cells(i, 1) = Empty Then
        Rows(i).Delete
    End If
    i = i - 1
Loop

End Sub

Ответы на вопрос(1)

Ваш ответ на вопрос