ВБА тајмер | Примери за употребу функције Екцел ВБА тајмер
Екцел ВБА ТИМЕР функција
ВБА тајмер је уграђена функција која нам даје делимичну вредност секунди, врло је корисна функција која се користи за паузирање било ког низа кодова који се покрећу или њихово поновно покретање на основу времена које је обезбедио корисник, тајмер се једноставно користи као изјава у ВБА са уносом времена.
Једноставно речено, ТИМЕР даје укупан број секунди од поноћи текућег дана. Тачно од прве линије кода, заправо можемо пратити време које наш код троши да би довршио поступак наведен у потпроцедури.
Понекад када напишете код и желите да тестирате трајање кода, тј. Које је укупно време потребно за завршетак потпроцедуре. Тестирањем стварног трајања вашег кода можете учинити свој код ефикасним и елиминисати дуготрајан процес брисањем нежељених или дугих кодова из вашег модула.
Како се користи функција ТИМЕР у ВБА?
Као што сам рекао, функција ТИМЕР враћа укупне секунде протекле од поноћи тренутног датума. Када пишем овај чланак, време је 13:50:45 у Индији.
Направио сам име макронаредбе и доделио вредност ТИМЕР у оквиру ВБА поруке.
Шифра:
Суб Тимер_Екампле1 () МсгБок Тајмер Крај Суб
Када покренем овај код, добио сам резултат 50480.08.
Ово су укупне секунде протекле од данашње поноћи, тј. Од 00:00:00 АМ
Дакле, од поноћи 12 до тренутног времена 14:01:20, прошло је укупно 14 сати 1 минут 20 секунди. У секундама је једнако 50480.08 што даје наша функција ТИМЕР.
Примери
Овај ВБА тимер Екцел предложак можете преузети овде - ВБА тимер Екцел предложакПример # 1 - Израчунајте укупно време проведено вашим кодом
Сада ћемо извршити неко једноставно кодирање да бисмо тестирали време које је ВБА требало да изврши поступак. Написао сам неки код као што је приказано на доњој слици.
Шифра:
Суб До_Унтил_Екампле1 () Дим СТ Ас Сингле СТ = Тимер Дим к Ас Лонг к = 1 До Унтил к = 100000 Целлс (к, 1) .Валуе = к к = к + 1 Лооп МсгБок Тимер - СТ Енд Суб
Ако сада покренем овај код, приказаће ми се укупно време потребно ВБА за извршење.
Каже 3.058594, резултат који даје ова функција је у секундама, тј. Укупно време потребно овом коду је 3.058 секунди.
Да бисте користили код, написао сам вам доњи код.
Шифра:
Суб Тимер_Екампле1 () Затамни Време почетка као појединачно СтартингТиме = Тајмер 'Унесите код овде' Унесите код овде 'Унесите код овде' МсгБок Тимер - СтартингТиме Енд Суб
Употријебите горе наведено и унесите свој код након кода СтартингТиме = Тајмер али пре код МсгБок Тимер - СтартингТиме тј. у зеленој површини морате унети свој код.
Објашњење: Прво променљива СтартингТиме = Тајмер значи да је у време покретања кода једнако времену протеклом од поноћи до времена рада кода.
Тајмер - Време почетка: Значи након покретања кода које је протекло време минус време забележено на почетку кода кроз променљиво време почетка.
Ово ће дати разлику између времена почетка и завршетка и вратити резултат.
Пример 2 - Прикажите резултат у тачном формату времена
Као што смо видели, резултат функције даје се у секундама, али не у тачном формату. Међутим, можемо применити ВБА формат времена на крајњи резултат помоћу функције ФОРМАТ.
Користите доњи код да бисте видели резултат у тачном формату времена, тј. „Хх: мм: сс“ формат.
Овде сам користио функцију ФОРМАТ. Резултат је дат са (Тајмер - време почетка). Поделио сам га бројем 86400 да бих га претворио у секунде према правилима временског формата, затим сам применио формат времена у сату, минуту и другом формату.
Сада, ако покренем код, даће овакав резултат.
Дакле, укупно време потребно за код је 3 секунде.
Лепота овог кода је у тренутку када пређе 60 секунди показаће резултат за неколико минута. Паузирао сам свој код на минут (користећи Цтрл + Бреак) и видећу резултат.
Дакле, укупно време које овај код узима сада је 1 минут и 2 секунде.
Пример # 3 - Алтернативни код за тајмер
Постоји алтернатива ТИМЕР-у коришћењем САДА () функцију. Испод је алтернативни код.
Ствари које треба запамтити
- Функција ТИМЕР задржава вредност на крају дана, тј. У 23:59:59 ПМ.
- НОВ функција враћа тренутни датум и тренутно време.
- ТИМЕР приказује укупне секунде протекле од тренутног датума у поноћ.