VBA தேதி பகுதி செயல்பாடு | தேதியின் குறிப்பிட்ட பகுதியை எவ்வாறு திருப்பித் தருவது?
எக்செல் விபிஏ டேட்பார்ட் செயல்பாடு
VBA இல் தேதி பகுதி கொடுக்கப்பட்ட தேதிக்கான தேதியின் பகுதியை ஒரு வாதமாக அடையாளம் காண பயன்படுத்தப்படுகிறது, தேதி பகுதி நாட்கள் அல்லது மாதங்கள் அல்லது ஆண்டு அல்லது மணிநேர நிமிடங்கள் மற்றும் விநாடிகள் கூட இருக்கலாம், இந்த செயல்பாட்டின் தொடரியல் தன்னை மிகவும் தெளிவுபடுத்துகிறது, அது போலவே பின்வருமாறு, தேதி பகுதி (இடைவெளி, வாதமாக தேதி).
தொடரியல்
டேட்பார்ட் செயல்பாட்டின் தொடரியல் கீழே கொடுக்கப்பட்டுள்ளது:
- இடைவெளி: இடைவெளி வாதத்தில் அனுப்பப்பட வேண்டிய தரவு சரம் வகையாகும், அதாவது இந்த வாதத்தில் எந்தவொரு சரியான மதிப்புகளும் இருக்கலாம். இடைவெளி ஆண்டு, மாதம், காலாண்டு, நாள், வாரம், மணி, நிமிடம், இரண்டாவது.
- தேதி: மதிப்பீடு செய்ய வேண்டிய தேதி மதிப்பு.
- firstdayofweek: இது ஒரு விருப்ப அளவுரு. இது வாரத்தின் முதல் நாளை விவரிக்கிறது, இது கூட புறக்கணிக்கப்படலாம். இந்த அளவுரு புறக்கணிக்கப்பட்டால், இது தானாகவே வாரத்தின் முதல் நாளாக ஞாயிற்றுக்கிழமை எடுக்கும். நீங்கள் அதை மாற்ற விரும்பினால், இந்த அளவுருவைப் பயன்படுத்தலாம். இந்த வாதம் vbUseSystem 0 ஐக் கொண்டிருக்கலாம்.
NLS API அமைப்பைப் பயன்படுத்தவும்
vbSunday (இயல்புநிலை), vbMonday, vbT Tuesday, vbWed Wednesday, vbThursday vbFriday, vbSaturday.
- firstweekofyear: அதேபோல் மேல் அளவுரு, இது ஒரு விருப்ப அளவுருவாகும். இது ஆண்டின் முதல் வாரத்தை விவரிக்கிறது. இந்த அளவுருவையும் புறக்கணிக்க முடியும். இந்த அளவுரு புறக்கணிக்கப்பட்டால், ஜனவரி 1 ஆம் தேதி ஆண்டின் முதல் வாரமாக அது கருதுகிறது. நீங்கள் அதை மாற்ற விரும்பினால், இந்த அளவுருவைப் பயன்படுத்தலாம்.
இந்த வாதம் பின்வரும் மதிப்புகளைக் கொண்டிருக்கலாம்.
vbUseSystem, vbFirstJan1, vbFirstFourDays, vbFirstFullWeek.
எல்லா அளவுருக்களையும் கொடுத்த பிறகு, டேட்பார்ட் () முழு தேதி அல்லது ஆண்டு அல்லது மாதம் அல்லது காலாண்டு போன்ற எண் மதிப்பை வழங்கும். எனவே இந்த செயல்பாட்டின் வருவாய் வகை ஒரு எண் மதிப்பாக இருக்கும்.
VBA இல் டேட்பார்ட் செயல்பாட்டை எவ்வாறு பயன்படுத்துவது?
இந்த விபிஏ டேட்பார்ட் எக்செல் வார்ப்புருவை இங்கே பதிவிறக்கம் செய்யலாம் - விபிஏ டேட்பார்ட் எக்செல் வார்ப்புருஎடுத்துக்காட்டு # 1
முதல் எடுத்துக்காட்டு, அந்த மாதத்தின் முழுமையான தேதி மற்றும் காலாண்டையும் காண்பிப்பதாகும்.
இதை அடைய நாம் விஷுவல் பேசிக் இல் சில குறியீட்டை எழுத வேண்டும், அந்த கோட்டோ டெவலப்பர் தாவலுக்கு பின்னர் விஷுவல் பேசிக் மீது சொடுக்கவும், பின்னர் ஒரு சாளரம் திறக்கப்படும்.
அந்த சாளரத்தில் கீழே காட்டப்பட்டுள்ளபடி குறியீட்டை எழுதவும்.
குறியீடு:
துணை தேதி_தேட்பார்ட் () மங்கலான மைடேட் மாறுபாடு mydate = # 12/25/2019 # MsgBox mydate MsgBox DatePart ("q", mydate) 'காலாண்டு முடிவு துணை
இந்த எடுத்துக்காட்டில், தேதியையும் தேதியின் ஒரு பகுதியையும் தேதிக்கு காண்பிக்க டேட்பார்ட் செயல்பாட்டைப் பயன்படுத்தினோம். ஆண்டின் எந்த காலாண்டில் வரும் தேதி இது என்பதை இது காட்டுகிறது.
நாங்கள் குறியீட்டை பிழைத்திருத்தினால், குறியீடு “Msgbox mydate” ஐ இயக்கும் போது முதல் தேதி முழுமையான தேதியாக காண்பிக்கப்படும், ஏனெனில் சீரற்ற தேதி “mydate” மாறிக்கு ஒதுக்கப்படுகிறது.
அடுத்து, அந்த தேதி எந்த ஆண்டின் கீழ் வரும் என்பதைக் காண்பிக்கிறோம்.
நீங்கள் குறியீட்டை கைமுறையாக இயக்கும்போது அல்லது குறுக்குவழி விசை F5 ஐப் பயன்படுத்தும்போது, சரி என்பதைக் கிளிக் செய்த பிறகு தேதி காட்டப்படும். அடுத்து, தேதியின் கால் பகுதி காண்பிக்கப்படும், இது கீழே உள்ள ஸ்கிரீன் ஷாட்டில் காட்டப்படலாம்.
அதேபோல், காலாண்டு, தேதி அல்லது மாதம் அல்லது ஆண்டு மட்டுமே காட்டப்படும்.
எடுத்துக்காட்டு # 2
இந்த எடுத்துக்காட்டில், இயக்க நேரத்தில் தேதியை கைமுறையாக உள்ளிடுவேன்.
குறியீடு:
துணை தேதி 1_டேட் பார்ட் () மங்கலான இன்றைய தேதி தேதியாக 'மாறிகள் அறிவிக்கவும். மங்கலான Msg TodayDate = InputBox ("ஒரு தேதியை உள்ளிடுக:") Msg = "காலாண்டு:" & தேதி பகுதி ("q", இன்று தேதி) MsgBox Msg End Sub
இங்கே இந்த எடுத்துக்காட்டில், இயக்க நேரத்தில் தேதியை கைமுறையாக பெற முயற்சிக்கிறோம். “TodayDate = InputBox (“ ஒரு தேதியை உள்ளிடுக: ”)” என்ற குறியீடு இந்த வரியை தேதியை கைமுறையாக உள்ளிடலாம் என்பதைக் குறிக்கிறது,
தேதியை கைமுறையாக உள்ளிட்ட பிறகு, அது ஒரு செய்தி பெட்டியில் தேதியின் காலாண்டைக் காட்டுகிறது. இதை கீழே உள்ள ஸ்கிரீன் ஷாட்டில் காட்டலாம்.
ஜூன் மாதம் 2 வது காலாண்டில் இருப்பதால், இது மேலே உள்ள ஸ்கிரீன்ஷாட்டில் காட்டப்பட்டுள்ளபடி 2 வது காலாண்டைக் காட்டுகிறது.
எடுத்துக்காட்டு # 3
இந்த எடுத்துக்காட்டில், அனைத்து மதிப்புகளும் கலங்களில் நிரப்பப்படும்.
குறியீடு:
தனியார் துணை பணிப்புத்தகம்_ திறந்த () மங்கலான டம்மிடேட் தேதி டம்மிடேட் = ஆக்டிவ்ஷீட்.செல்ஸ் (2, 2) ஆக்டிவ்ஷீட்.செல்ஸ் (2, 2). மதிப்பு = நாள் (டம்மிடேட்) ஆக்டிவ்ஷீட்.செல்ஸ் (3, 2) .மதிப்பு = மணிநேரம் (டம்மீட்) .செல்ஸ் (4, 2). மதிப்பு = நிமிடம் (டம்மிடேட்) ஆக்டிவ்ஷீட்.செல்ஸ் (5, 2). மதிப்பு = மாதம் (டம்மிடேட்) ஆக்டிவ்ஷீட்.செல்ஸ் (6, 2) .மதிப்பு = வார நாள் (டம்மிடேட்) முடிவு துணை
தேதிகள் எக்செல் தாளில் உள்ள கலங்களில் நிரப்பப்படுகின்றன, அதற்காக குறியீடு ஆக்டிவ் ஷீட்.செல்ஸ் என எழுதப்பட்டுள்ளது. இந்த குறியீட்டின் மூலம் இருக்கும் தேதி ஆண்டு மாதமாக இருக்கலாம் அல்லது கொடுக்கப்பட்ட கலங்களில் தேதியை செருகலாம்.
எடுத்துக்காட்டாக, மேலே உள்ள ஸ்கிரீன்ஷாட்டில்,
எக்செல் தாளின் கலங்களில் (2, 2) நாள் செருகப்பட வேண்டும். எனவே குறியீடு “ஆக்டிவ்ஷீட்.செல்ஸ் (2, 2) என்று எழுதப்பட்டுள்ளது. மதிப்பு = நாள் (டம்மிடேட்)“.
குறியீட்டை F5 விசையைப் பயன்படுத்தி அல்லது கைமுறையாக இயக்கவும், இதன் விளைவாக கீழே காட்டப்பட்டுள்ளது.
இது இயல்பாகவே இன்றைய தேதியை எடுத்துக்கொள்கிறது, மேலும் இது 30 இன் (2,6) கலத்தில் காண்பிக்கப்படுகிறது.
அதேபோல் மற்ற எல்லா தரவிற்கும் இது நிரப்பப்படலாம்.
டேட்பார்ட் செயல்பாட்டின் பயன்பாடு
- பெயர் குறிப்பிடுவது போல தேதியின் பகுதியைக் காண்பிக்க டேட்பார்ட் செயல்பாடு பயன்படுத்தப்படலாம், அதாவது, தேதியின் நாள் அல்லது மாதம் அல்லது ஆண்டு மட்டுமே காட்டப்பட வேண்டும் என்றால் இந்த செயல்பாட்டைப் பயன்படுத்தலாம்.
- இந்த செயல்பாடு தேதி, மாதம் மற்றும் ஒரு வருடத்தை ஒரு குறிப்பிட்ட தேதியிலிருந்து பிரிக்கிறது.
- இந்த செயல்பாட்டைப் பயன்படுத்துவதன் மூலம் தேதி பிரிக்கப்படுவது மட்டுமல்லாமல், கால், நாள், மணிநேரம், நிமிடம் மற்றும் ஒரு நொடி ஆகியவற்றைப் பெறலாம்.
நினைவில் கொள்ள வேண்டிய விஷயங்கள்
- இந்த செயல்பாட்டை VBA செயல்பாடாக மட்டுமே பயன்படுத்த முடியும். சாதாரண எக்செல் இல், இதைப் பயன்படுத்த முடியாது.
- இந்த செயல்பாட்டில் மதிப்பாக வழங்கப்படும் தேதிகள் mm-dd-yyyy வடிவம் அல்லது DD-MM-YYYY வடிவம் போன்ற எந்த வடிவத்திலும் கொடுக்கப்படலாம்.
- இந்த செயல்பாடு தேதி, மாதம், ஆண்டு அல்லது நேரம் போன்ற ஒரு மணிநேரம், நிமிடம், விநாடிகள் போன்ற அனைத்து மதிப்புகளையும் தனித்தனியாக பிரிக்கும்.
- இது மைக்ரோசாஃப்ட் எக்செல் இன் விபிஏவில் தேதி மற்றும் நேர செயல்பாடுகளின் கீழ் ஏற்பாடு செய்யப்பட்டுள்ளது.