Как в VBA узнать длительность операции в миллисекундах?
Формулировка задачи:
Выполняю ряд функций в основной функции, которая в свою очередь выполняется в цикле заголовочной функции.
Длительность выполнения заголовочной функции слишком высокая.
Замерил время выполнения всех основных функций в заголовочной - выловил ту самую основную, которая и тормозит процесс. Но когда замерил время выполнения функций, выполняющихся в тормозной основной функции - дебугер выдал мне нолики.
как измеряю время:
Вообщем когда миллисекунды за один цикл итерации складываются в 1000 итераций - это уже существенные минуты
Но я измерить эти миллисекунды не могу. Как?
Вот содержимое окошка immediate:
Этап 0 0
Этап 1 1,15740740740389E-05
Этап 2 6,94444444444553E-05
Этап 3 0
Этап 4 0
Этап 5 0
Этап 6 1,15740740740944E-05
Этап 7 1,15740740740389E-05
А это время выполнения отельных функций во 2 этапе
Начало 0
Создание_массивов_записи_БД 0
Наполнение_массивов_записи_БД 0
Обработка_пустышек_массивов_записи_БД 0
Запись_данных 0
Решение задачи: «Как в VBA узнать длительность операции в миллисекундах?»
textual
Листинг программы
Private Declare Function GetTickCount Lib "kernel32" () As Long Sub Test() Dim X(1 To 4000) As Integer Randomize For i% = 1 To 4000 X(i%) = 10 * Rnd() Next i% t_Start& = GetTickCount QuickSort X(), 1, 4000 t_End& = GetTickCount Debug.Print t_End& - t_Start& End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д