: Excel VBA இல் பயனர் வரையறுக்கப்பட்ட வகை வரையறுக்கப்படவில்லை (2 விரைவான தீர்வுகள்)

Hugh West

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

பயிற்சிப் புத்தகத்தைப் பதிவிறக்கவும்

நீங்கள் உடற்பயிற்சி செய்ய இந்தப் பயிற்சிப் புத்தகத்தைப் பதிவிறக்கவும் இந்தக் கட்டுரையைப் படிக்கிறோம்.

பயனர் வரையறுக்கப்பட்ட வகை வரையறுக்கப்படவில்லை எக்செல் VBA இல் வகை வரையறுக்கப்படவில்லை

எக்செல் VBA இல் அடிக்கடி ஏற்படும் இந்த பிழையின் பின்னால் 2 முக்கிய சிக்கல்கள் உள்ளன. அவற்றை விரிவாக ஆராய்ந்து அவற்றைத் தீர்ப்பதற்கான வழிகளைக் கண்டறியலாம்.

1. மாறிகளை அறிவிக்கும் போது ஸ்பெல்லிங் பிழை

இந்த பிழையின் முக்கிய காரணம் இதுதான். பெரும்பாலான நேரங்களில், பிழை “பயனர்-வரையறுக்கப்பட்ட வகை வரையறுக்கப்படவில்லை” மாறிகளை அறிவிக்கும் போது எழுத்துப்பிழை காரணமாக ஏற்படுகிறது.

பின்வரும் குறியீடுகளின் வரிகளைப் பாருங்கள்.

4494

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

0>

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

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

2. சரியான குறிப்பு இல்லாமை

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

பின்வரும் VBA குறியீட்டைப் பார்க்கவும்.

3313

இந்தக் குறியீட்டை இயக்கவும். "பயனர்-வரையறுக்கப்பட்ட வகை வரையறுக்கப்படவில்லை", அகராதிப் பொருளை உயர்த்தி அதே பழைய பிழையைப் பெறுவீர்கள். ஏனெனில் VBA அகராதி பொருள் ஐ அடையாளம் காண முடியவில்லை, மேலும் இது ஒரு பயனர் வரையறுக்கப்பட்ட மாறியாகக் கருதப்பட்டது, இது தவறாக வரையறுக்கப்படவில்லை.

இப்போது மிகப் பெரிய கேள்வி என்னவென்றால், இந்தப் பிழையை எவ்வாறு தீர்ப்பது? சுலபம். இந்தப் பிழையைத் தீர்க்க 2 வழிகள் உள்ளன.

⧪ தீர்வு 1: விஷுவல் பாக்ஸ் குறிப்புப் பெட்டியிலிருந்து முன்தேவையான குறிப்பைச் சரிபார்த்தல்

இது இந்த சிக்கலை தீர்க்க சிறந்த வழி. கருவிகள் > விஷுவல் பேசிக் ரிப்பனில் உள்ள குறிப்புகள் பொத்தான். குறிப்புகள் என்பதைக் கிளிக் செய்யவும்.

குறிப்புகள் என்ற உரையாடல் பெட்டி திறக்கும். ஸ்க்ரோல் செய்து மைக்ரோசாஃப்ட் ஸ்கிரிப்டிங் இயக்க நேரத்தைக் கண்டறியவும் (இது நீங்கள் பயன்படுத்தும் பொருளைப் பொறுத்தது. அகராதிobject க்கு Microsoft scripting Runtime அறிவிக்கப்பட வேண்டும். எனவே, VBA குறியீட்டில் ஒரு பொருளைப் பயன்படுத்தும் போது, ​​ VBA ஆல் அங்கீகரிக்கப்படுவதற்கு அதன் முன்நிபந்தனையை நீங்கள் அறிந்திருக்க வேண்டும். மேலும் தகவலுக்கு இந்த இணைப்பைப் பார்வையிடவும்.). சரிபார்க்கவும்.

இப்போது திரும்பி வந்து குறியீட்டை இயக்கவும். நீங்கள் எந்த பிழையும் பெற மாட்டீர்கள். ஏனெனில் VBA இம்முறை அகராதிப் பொருளை அடையாளம் காண முடியும்.

⧪ தீர்வு 2: குறிப்பிட்ட பொருளைக் காட்டிலும் தூய பொருளாக அறிவித்தல்

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

பின்வரும் குறியீடுகளின் வரிகளைக் கவனியுங்கள்.

6773

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

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