Функция за изчакване на VBA - Как да използвате функцията за изчакване на Excel VBA?

Съдържание:

Anonim

Функция за изчакване на VBA

Подобно на функцията за заспиване Функцията изчакване във VBA прави код, който трябва да изчака или да направи пауза за няколко секунди. Как се използват такива функции, че трябва да направим някакъв специфичен код, който да бъде на пауза или задържан, за да оставим някоя друга програма първо да работи и след това да възобнови другата програма. Нарича се още като Application.Wait метод във VBA.

Както подсказва името, функцията VBA Wait във VBA се използва за задържане на програма до определено време, така че през този период може да работи и друг код. Фоновите приложения продължават да работят и само текущият модул чака.

Синтаксис за функция на изчакване в Excel VBA

Синтаксисът да се използва Application.Wait функцията в VBA е както следва:

Тази функция връща булева стойност.

Така че, ако се нуждаем от код, за да изчакаме до 14:00 днес, синтаксисът за кода ще бъде следният:

Приложение.Чакайте („14:00:00”)

Горният код ще накара кода да спре до 14:00 ч. И кодът ще се възобнови едва след 14:00 ч. Това не е оптимално да накараме един код да изчака 2 PM, като цяло искаме да изчакаме определен код за още 10 секунди и след това да стартираме. Ако трябва да направя код, за да изчакам 10 секунди, кодът ще бъде както следва:

Приложение.Чакайте (Сега + TimeValue ("0:00:10"))

Сега е функцията, която ще отнеме текущото време и ние добавяме 10 секунди към текущото време чрез функцията за стойност на времето, така че кодът да изчака или да направи пауза за 10 секунди.

Забележка: За да използваме VBA, трябва да сме активирали раздела на програмист от раздела Files в секцията с опции.

Как да използвате функцията за изчакване на Excel VBA?

Ще научим как да използваме VBA Wait Excel функция с няколко примера.

Можете да изтеглите този шаблон на VBA Wait Excel тук - VBA Wait Excel шаблон

Функция за изчакване на VBA - пример №1

В момента времето в моя лаптоп е 15:50 ч. И искам кодът да се възобнови в 16:00 часа. Ще използваме просто допълнение към някои променливи, но ще покажем резултата след 16:00. Искаме кодът да изчака този период.

Стъпка 1: Отидете в раздела Developer и кликнете върху Visual Basic, за да отворите VB Editor.

Стъпка 2: Щракнете върху вмъкване на раздела и след това щракнете върху модул .

Стъпка 3: След като се отвори прозорецът с кода, декларирайте подфункция, за да започнете да пишете кода.

Код:

 Sub Sample () Край Sub 

Стъпка 4: Декларирайте три променливи AB и C като цяло число.

Код:

 Подпроба () Dim A, B, C Като цяло число Край Sub 

Стъпка 5: Задайте случайни стойности на променлива А и В.

Код:

 Подпроба () Dim A, B, C Като цяло число A = 10 B = 15 Край Sub 

Стъпка 6: Използвайте application.wait функция, за да накарате функцията да изчака до 16:00 PM.

Код:

 Подпроба () Dim A, B, C като цяло число A = 10 B = 15 Приложение. Чакайте ("16:00:00") Край Sub 

Стъпка 7: Използвайте добавянето на A и B и съхранявайте изхода в C.

Код:

 Подпроба () Dim A, B, C Като цяло число A = 10 B = 15 Приложение. Чакайте ("16:00:00") C = A + B Край Sub 

Стъпка 8: Използвайте Msgbox функция, за да покажете стойността на C.

Код:

 Подпроба () Dim A, B, C Като цяло число A = 10 B = 15 Приложение. Изчакайте ("16:00:00") C = A + B MsgBox C End Sub 

Стъпка 9: Изпълнете горния код. След като стартираме кода виждаме, че кодът не показва съобщение до 16:00, но след 16:00 получавам следния изход.

Трябваше да чакам до 16:00, за да видя този резултат. Кодът на функцията Msgbox всъщност трябваше да изчака.

Функция за изчакване на VBA - пример №2

Нека видим кода с някои персонализирани съобщения, че кодът ще изчака 10 секунди и след като изтекат 10 секунди, ще се покаже, че времето за изчакване е изтекло и ще се покаже крайният резултат.

Стъпка 1: Отидете в раздела Developer и кликнете върху Visual Basic, за да отворите VB Editor.

Стъпка 2: Декларирайте подфункция, за да започнете да пишете кода.

Код:

 Sub Sample1 () Край Sub 

Стъпка 3: Декларирайте три променливи AB и C като цяло число.

Код:

 Sub Sample1 () Dim A, B, C As Integer End Sub 

Стъпка 4: Задайте случайни стойности на променливи А и В.

Код:

 Sub Sample1 () Dim A, B, C Като цяло число A = 2 B = 10 Край Sub 

Стъпка 5: Използвайте функцията Msgbox, за да покажете, че времето за изчакване предстои да започне.

Код:

 Подпроба1 () Dim A, B, C като цяло число A = 2 B = 10 MsgBox "Времето за изчакване започва" Край Sub 

Стъпка 6: Използвайте функцията Изчакайте, за да изчакате кода за 10 секунди.

Код:

 Sub Sample1 () Dim A, B, C като цяло число A = 2 B = 10 MsgBox „Часът на изчакване е стартиран“ Приложението.Чакайте (сега + TimeValue („0:00:10“)) Край Sub 

Стъпка 7: В променлива С тя съхранява стойността на B / A и показва персонализирано съобщение, че периодът на изчакване е приключил и след това показва стойността на C.

Код:

 Подпроба1 () Dim A, B, C като цяло число A = 2 B = 10 MsgBox „Часът на изчакване започва“ Приложение.Чакайте (Сега + TimeValue („0:00:10“)) C = B / A MsgBox “ Времето за изчакване е над "MsgBox C End Sub 

Стъпка 8: Пускаме кода и виждаме първото съобщение като следното.

Стъпка 9: Натиснете OK, за да видите следващия резултат след 10 секунди.

Стъпка 10: Когато натиснете ОК, получаваме крайния резултат.

В горния пример направихме кода да изчака 10 секунди и след това да покажем резултата от стойността на C.

Функция за изчакване на VBA - пример №3

Сега нека преименуваме работните листове лист 1 и лист 2 като Anand и Aran съответно, но искаме празнина от 5 секунди между двата листа да бъде преименувана.

Стъпка 1: Отидете в раздела Developer и кликнете върху Visual Basic, за да отворите VB Editor.

Стъпка 2: Декларирайте подфункция, за да започнете да пишете кода.

Код:

 Sub Sample2 () Край Sub 

Стъпка 3: Активирайте първия работен лист.

Код:

 Sub Sample2 () работни листове ("Sheet1"). Активирайте End Sub 

Стъпка 4: Преименувайте първия работен лист като Anand.

Код:

 Sub Sample2 () Работни листове ("Sheet1"). Активиране на работни листове ("Sheet1"). Име = "Anand" End Sub 

Стъпка 5: Показване на съобщение, че лист 1 е преименуван и кодът ще се спре на пет секунди.

Код:

 Sub Sample2 () Работни листове ("Sheet1"). Активиране на работни листове ("Sheet1"). Име = "Anand" MsgBox "Лист 1, преименуван сега. Кодът ще се спре на 5 секунди" End Sub 

Стъпка 6: Използвайте функцията Изчакайте, за да накарате кода да изчака пет секунди.

Код:

 Sub Sample2 () Работни листове ("Sheet1"). Активиране на работни листове ("Sheet1"). Име = "Anand" MsgBox "Лист 1, преименуван сега. Кодът ще спре за 5 секунди" Application.Wait (Now + TimeValue ("0:00: 05 ")) Край Sub 

Стъпка 7: Сега преименувайте втория лист 2 като Aran.

Код:

 Sub Sample2 () Работни листове ("Sheet1"). Активиране на работни листове ("Sheet1"). Име = "Anand" MsgBox "Лист 1, преименуван сега. Кодът ще спре за 5 секунди" Application.Wait (Now + TimeValue ("0:00: 05 ")) Работни листове (" Sheet2 "). Активиране на работни листове (" Sheet2 "). Име =" Aran "End Sub 

Стъпка 9: Показване на съобщение, че лист 2 е преименуван и чакането е преминало.

Код:

 Sub Sample2 () Работни листове ("Sheet1"). Активиране на работни листове ("Sheet1"). Име = "Anand" MsgBox "Лист 1, преименуван сега. Кодът ще спре за 5 секунди" Application.Wait (Now + TimeValue ("0:00: 05 ")) Работни листове (" Sheet2 "). Активиране на работни листове (" Sheet2 "). Име =" Aran "MsgBox" Времето за изчакване приключи и лист 2 също се преименува на "End Sub 

Стъпка 10: Сега стартирайте кода, за да видите резултата.

Виждаме, че лист 1 е преименуван на Anand и получаваме съобщението да изчакаме пет секунди. Кликнете върху OK и изчакайте пет секунди за второто съобщение.

От горните примери става ясно как да използвате функцията Wait във VBA.

Неща, които трябва да запомните

Има няколко неща, които трябва да запомним за функцията за изчакване на Excel VBA:

  • Той е подобен на функцията за сън.
  • Функцията за чакане е вградена в VBA за разлика от функцията за заспиване, която е функция на Windows.
  • Функцията Wait взема времето като аргумент.

Препоръчителни статии

Това е ръководство за функцията за изчакване на VBA. Тук обсъдихме как да използваме функцията за изчакване на Excel VBA заедно с практически примери и шаблон за excel за сваляне. Можете да разгледате и другите ни предложени статии -

  1. Как да използвате VBA TIMER?
  2. Изваждане на времето в Excel
  3. Ръководство за Excel VBA Time
  4. СЕГА Excel функция