VBA காத்திருப்பு செயல்பாடு | எக்செல் விபிஏ காத்திருப்பு முறையை எவ்வாறு பயன்படுத்துவது?

எக்செல் விபிஏ காத்திருப்பு செயல்பாடு

வி.பி.ஏ காத்திருங்கள் ஒரு குறிப்பிட்ட நேரத்திற்கு குறியீட்டை இடைநிறுத்த பயன்படும் ஒரு உள்ளமைக்கப்பட்ட செயல்பாடு, இது ஒரு தூக்க கட்டளையில் நாம் செய்வதைப் போன்றது மற்றும் நாம் பயன்பாட்டை பயன்படுத்தும் ஒரு குறியீட்டை இடைநிறுத்துவது.

சில குறியீடுகளுக்கு மற்ற பணிகளை முடிக்க வேண்டியதன் காரணமாக அடுத்த வரியின் குறியீட்டிற்கு முன்னேறுவதற்கு சிறிது நேரம் தேவைப்படுகிறது. இந்த சந்தர்ப்பங்களில், செயல்படுத்தப்பட வேண்டிய குறியீட்டை நிறுத்தி, சிறிது நேரம் இடைநிறுத்தி, பின்னர் செயல்படுத்தலுடன் தொடர வேண்டும். இரண்டு வழிகளில் செயல்படுத்தப்பட வேண்டிய குறியீட்டை நாம் இடைநிறுத்தலாம், முதலாவது “தூக்கம்” முறை மற்றும் இரண்டாவது “காத்திரு” முறை. எங்கள் முந்தைய கட்டுரையில், VBA குறியீட்டை இடைநிறுத்த “VBA Sleep” முறையைப் பற்றி விவாதித்தோம்.

மேக்ரோ குறியீட்டை ஒரு குறிப்பிட்ட காலத்திற்குள் செயல்படுத்த வேண்டும் என்று பெயர் சொல்வது போல் “காத்திருங்கள்”. இந்த முறையைப் பயன்படுத்தி, எங்கள் குறியீடு இடைநிறுத்தப்பட வேண்டிய நேரத்தைக் குறிப்பிட வேண்டும், அடுத்த உதாரணங்களைக் காண்போம்.

WAIT செயல்பாட்டின் தொடரியல் பின்வருமாறு.

எங்கள் குறியீடு இடைநிறுத்தப்பட வேண்டிய நேரத்தை நாம் குறிப்பிட வேண்டும். முடிவில் நீங்கள் பார்க்க முடியும் எனில் அது பூலியன் என்று கூறுகிறது, இதன் பொருள் பூலியன் மதிப்புகள் அதாவது உண்மை அல்லது பொய் என முடிவுகளைத் தருகிறது.

குறிப்பிட்ட நேரம் வரும் வரை அது பொய் என்றும் குறிப்பிட்ட நேரம் வந்த தருணம் உண்மை என்றும் கூறுகிறது.

இது SLEEP செயல்பாட்டைப் போலல்லாது, ஏனெனில் WAIT என்பது ஒரு உள்ளமைக்கப்பட்ட செயல்பாடு, அங்கு SLEEP ஒரு விண்டோஸ் செயல்பாடு ஆகும். SLEEP செயல்பாட்டை அணுகுவதற்கு முன், கீழே உள்ள குறியீட்டை தொகுதியின் மேலே குறிப்பிட வேண்டும். ஆனால் WAIT க்கு இது தேவையில்லை.

குறியீடு:

# VBA7 என்றால் பொது அறிவிப்பு PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds as LongPtr) ‘64 பிட் சிஸ்டங்களுக்கு 

எக்செல் விபிஏ காத்திருப்பு செயல்பாட்டைப் பயன்படுத்துவதற்கான எடுத்துக்காட்டுகள்

இந்த விபிஏ வெயிட் எக்செல் வார்ப்புருவை இங்கே பதிவிறக்கம் செய்யலாம் - விபிஏ வெயிட் எக்செல் வார்ப்புரு

எடுத்துக்காட்டு # 1

நீங்கள் ஒரு எக்செல் நடுப்பகுதியில் 14:30:00 மணிக்கு வேலை செய்கிறீர்கள் என்று வைத்துக் கொள்ளுங்கள், நேரம் 14:40:00 ஆகும் வரை உங்கள் குறியீடு இடைநிறுத்தப்பட வேண்டும். நீங்கள் கீழே உள்ள குறியீட்டைப் பயன்படுத்தலாம்.

குறியீடு:

 துணை காத்திருப்பு_உதவி 1 () விண்ணப்பம். "14:40:00" முடிவு துணை 

உங்கள் இயக்க முறைமையில் நேரம் 14:40:00 வரை அடையும் வரை குறியீடு உங்கள் எக்செல் வேலை செய்வதைத் தடுக்கும். இதுபோன்ற நேரத்தை வழங்குவது ஆபத்தானது, ஏனென்றால் நாங்கள் எப்போதும் 14:30:00 முதல் வேலை செய்ய மாட்டோம், அது எல்லா நேரத்திலும் மாறுபடும்.

நீங்கள் 2 நிமிடங்கள் காத்திருக்க விரும்பும் குறியீட்டை இயக்கும்போதெல்லாம் சொல்லலாம், இதை உங்கள் குறியீட்டில் எவ்வாறு குறிப்பிடுவது?

எனவே, தற்போதைய நேரத்திலிருந்து குறிப்பிட்ட நேரத்தை உள்ளிட TIME VALUE செயல்பாட்டுடன் VBA NOW செயல்பாட்டைப் பயன்படுத்தலாம்.

இப்போது உங்களுக்கு நினைவூட்டுவதற்காக () செயல்பாடு உங்கள் கணினி அமைப்பின் படி தற்போதைய தேதி மற்றும் நேரத்தை வழங்குகிறது. TIMEVALUE செயல்பாடு 00:00:00 முதல் 23:59:59 வரையிலான நேரத்தைக் குறிக்கிறது, அதாவது 11:59:59 24 மணி வடிவத்தில் P.M. இது சரம் மதிப்பை நேர மதிப்பாக மாற்றுகிறது.

எடுத்துக்காட்டுக்கு இப்போது () + TIMEVALUE (00:02:30) என்றால் தற்போதைய நேரம் + 2 நிமிடம் 30 நொடி.

தற்போதைய நேரம் 14:25:30 என்றால் அது 14:28:00 ஆகிறது.

தற்போதைய நேரத்திலிருந்து அடுத்த 10 நிமிடங்களுக்கு உங்கள் குறியீட்டை செயல்படுத்துவதை நிறுத்த அல்லது இடைநிறுத்த நீங்கள் கீழே உள்ள குறியீட்டைப் பயன்படுத்தலாம்.

குறியீடு:

 துணை காத்திருப்பு_உதவி 2 () விண்ணப்பம். காத்திரு (இப்போது () + நேர மதிப்பு ("00:10:00")) முடிவு துணை 

துல்லியமான இடைநிறுத்தத்திற்கு இப்போது () செயல்பாட்டைப் பயன்படுத்துவது முக்கியம், இல்லையெனில், உங்கள் எக்செல் பணிப்புத்தகம் நள்ளிரவு வரை இடைநிறுத்தப்படும் வாய்ப்புகள் உள்ளன. எவ்வாறாயினும், எந்த நேரத்திலும் இடைநிறுத்தப்பட்ட முறையிலிருந்து நாம் வெளியே வரலாம் Esc விசை அல்லது பிரேக் கீ.

எடுத்துக்காட்டு # 2

ஒவ்வொரு முறையும் லூப் இயங்கும் போது 10 விநாடிகள் காத்திருக்கவும்

காத்திருப்பு முறை சுழல்களுடன் நன்கு பயன்படுத்தப்படுகிறது. ஒவ்வொரு முறையும் லூப் இயங்கும் போது 10 விநாடிகள் காத்திருக்க வேண்டிய சூழ்நிலைகள் உள்ளன. எடுத்துக்காட்டாக, கீழே உள்ள தரவைப் பாருங்கள்.

லாபம் = (விற்பனை - செலவு) கணக்கிட நீங்கள் ஒரு வளையத்தை உருவாக்க விரும்புகிறீர்கள், ஒவ்வொரு வளையத்திற்கும் பிறகு, முடிவு துல்லியமானதா இல்லையா என்பதை சரிபார்க்க 10 விநாடிகள் காத்திருக்க வேண்டும். கீழேயுள்ள குறியீடு அதைச் செய்யும்.

குறியீடு:

 துணை காத்திருப்பு_உதவி 3 () மங்கலான k என்பது k = 2 முதல் 9 கலங்களுக்கு (k, 4). மதிப்பு = கலங்கள் (k, 2) - கலங்கள் (k, 3) பயன்பாடு. காத்திருங்கள் (இப்போது () + நேர மதிப்பு ("00:00 : 10 ")) அடுத்த k முடிவு துணை 

இந்த குறியீடு வரி நெடுவரிசை வரியைக் கணக்கிடும். முதல் வரியின் நிறைவுக்குப் பிறகு, அடுத்த வரியைக் கணக்கிடுவதற்கு முன்பு 10 வினாடிகள் காத்திருக்கும்.

VBA Sleep vs VBA காத்திருங்கள்

VBA SLEEPVBA WAIT
இது VBA உள்ளமைக்கப்பட்ட செயல்பாடு அல்ல, இந்த செயல்பாட்டை அணுக சிறப்பு குறியீடு தேவை.இது ஒரு VBA உள்ளமைக்கப்பட்ட செயல்பாடு, இந்த செயல்பாட்டை அணுக எந்த சிறப்பு குறியீடும் தேவையில்லை.
தூக்கத்திற்கு மில்லி விநாடிகள் கால அளவு தேவைப்படுகிறது.காத்திருப்புக்கு வழக்கமான கால அளவு தேவை.
குறியீட்டை மில்லி விநாடிகளில் தாமதப்படுத்தலாம்முழு நொடிகளிலும் மட்டுமே நாம் தாமதிக்க முடியும்.