Расчет времени выполнения для нескольких макросов - PullRequest
0 голосов
/ 23 июня 2019

В настоящее время я использую следующий код, чтобы определить время, необходимое для выполнения определенного макроса.

    Sub Timer ()

        Dim StartTime As Double
        Dim SecondsElapsed As Double

        StartTime = Timer


        'Some macro executed


        SecondsElapsed = Round(Timer - StartTime, 2)

        MsgBox "This code ran successfully in " & SecondsElapsed & " seconds", vbInformation

    End Sub

Теперь я хочу использовать этот таймер для нескольких макросов, которые выполняются подряд с помощью кнопки. Я ищу что-то вроде:

    <Button>

        'Dim StartTime As Double
        'Dim SecondsElapsed As Double

        StartTime = Timer


        Macro1
        Macro2
        Macro3


        SecondsElapsed = Round(Timer - StartTime, 2)

        MsgBox "This code ran successfully in " & SecondsElapsed & " seconds", vbInformation

    <Button>

1 Ответ

2 голосов
/ 23 июня 2019

Вы можете просто вызывать свои макросы из основного кода таймера

Sub Timer ()

    Dim StartTime As Double
    Dim SecondsElapsed As Double

    StartTime = Timer


    call Macro1()
    call Macro2()
    call Macro3()


    SecondsElapsed = Round(Timer - StartTime, 2)

    MsgBox "This code ran successfully in " & SecondsElapsed & " seconds", vbInformation

End Sub

Если вы хотите узнать, сколько времени занимает каждая из них в отдельности, просто объявите переменную SecondsElapsed для каждого макроса и заполните ее после каждого оператора Call.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...