Функції таймера VBA повертають кількість секунд, що минули з опівночі поточного дня (повертається як єдиний тип даних).
Використання функції таймера VBA
Наступний код покаже вам, як за допомогою функції таймера VBA визначити, скільки секунд пройшло з півночі на момент запуску коду:
12345678 | Додаткове використанняTheVBATimerFunction ()Затемніть секундиsecondsSince = Таймер ()Налагодження.Надрукувати секундиEnd Sub |
Результат такий:
Використовуйте таймер VBA, щоб отримати фактичний час
Ви можете перетворити секунди, повернені з функції Таймер, у формат hh: mm: ss, щоб побачити фактичний час за допомогою такого коду:
123456789101112131415 | Sub GettingTheActualTime ()Затемніть секундиЗатемнити cTime як подвійнеЗатемніть фактичний час як варіантsecondsSince = Таймер ()cTime = secondsSince / (86400)theActualTime = Формат (cTime, "hh: mm: ss")MsgBox "Час, що минув з опівночі в секундах, це" & "" & секунди З моменту & vbNewLine & _"Фактичний час:" & "" & theActualTimeEnd Sub |
Результат такий:
Час розділу коду VBA
Якщо ви хочете порівняти повторно написаний код або обговорювати «більш швидкі» методи у VBA, ви можете використовувати вбудований таймер VBA. Встановлення змінної, що дорівнює таймеру на початку вашого коду, і віднімання цього від таймера в кінці дасть вам хороша оцінка про те, скільки часу потрібно для виконання фрагмента коду.
Крім того, на продуктивність можуть впливати інші програми, які працюють або намагаються запустити, поки ви макрос активні.
Наступний приклад був використаний, щоб побачити, скільки часу півтора мільйона разів запише слово «тест» у клітинку А1 на аркуші1. На моїй машині пішло 21 секунду.
123456789101112131415161718 | Sub BenchMark ()Затуманюйся як довгоDim BenchMark As DoubleBenchMark = Таймер«Початок перевірки кодуДля Count = 1 до 500000Sheet1.Cells (1, 1) = "test"Наступний граф«Кінець коду для перевіркиТаймер MsgBox - BenchMarkEnd Sub |
Якщо ваш код працює повільно, спробуйте прискорити його, вимкнувши оновлення екрана. Щоб зберегти екран Excel активним під час роботи таймера, ми можемо вставити метод DoEvents у код.