सामग्री तालिका
एक्सेलमा VBA सँग काम गर्दा हामीले सामना गर्ने सबैभन्दा सामान्य त्रुटिहरू मध्ये एक भनेको प्रयोगकर्ता-परिभाषित प्रकार परिभाषित गरिएको छैन। यस लेखमा, म तपाईंलाई यो त्रुटिको कारणले गर्दा र यो त्रुटि कसरी समाधान गर्ने भनेर देखाउनेछु।
अभ्यास कार्यपुस्तिका डाउनलोड गर्नुहोस्
तपाईंले अभ्यास गर्दा यो अभ्यास कार्यपुस्तिका डाउनलोड गर्नुहोस् यो लेख पढ्दै हुनुहुन्छ।
User-Defined Type Not Defined.xlsm
2 कारण र समाधान प्रयोगकर्ता परिभाषित Excel VBA
मा Type Not Defined Not Defined in Excel VBA मा बारम्बार आउने यो त्रुटिको पछाडि 2 प्रमुख समस्याहरू छन्। तिनीहरूलाई विस्तृत रूपमा अन्वेषण गरौं र तिनीहरूलाई समाधान गर्ने तरिकाहरू पत्ता लगाउनुहोस्।
1. चर घोषणा गर्दा हिज्जे त्रुटि
यो त्रुटि पछाडिको प्रमुख कारण हो। अधिकांश समय, त्रुटि "प्रयोगकर्ता-परिभाषित प्रकार परिभाषित छैन" भ्यारीएबलहरू घोषणा गर्दा हिज्जे त्रुटिको कारणले गर्दा हुन्छ।
कोडहरूको निम्न लाइनहरू हेर्नुहोस्।
8750
यदि तपाईंले यो कोड चलाउनुभयो भने, तपाईंले त्रुटिको उपस्थितिको बारेमा तपाईंलाई सूचित गर्ने त्रुटि बाकस प्राप्त गर्नुहुनेछ "प्रयोगकर्ता-परिभाषित प्रकार परिभाषित छैन"। यसको साथमा, तपाईंले नीलोमा हाइलाइट गरिएको कोडको दोस्रो लाइन फेला पार्नुहुनेछ, जहाँ मैले “strng” को सट्टा “strng” लेखेको छु।
मलाई आशा छ कि तपाईंले बिन्दु पाउनुभयो। VBA ले चर प्रकार “strng” पहिचान गर्न सकेन, त्यसैले यसले यसलाई नयाँ चर प्रकारको रूपमा मानेको छ र तपाईंले यसलाई कतै परिभाषित गर्नुभएको छ भन्ने सोचेको छ। तर जब योतपाईंले यसलाई कहिँ पनि घोषणा गर्नुभएको छैन, यसले त्रुटि खडा गर्यो।
त्यसैले, सरल VBA कोडहरू चलाउँदा, यदि तपाईंले जसरी पनि यो त्रुटि सामना गर्नुभयो भने, पहिले तपाईंको चर प्रकारका सबै हिज्जेहरू जाँच गर्नुहोस्।
2. उचित सन्दर्भको अभाव
यो त्रुटि पछि अर्को कारण हो। त्यो उचित सन्दर्भको अभाव हो। कहिलेकाहीँ हामीले हाम्रा कोडहरूमा केही वस्तुहरू प्रयोग गर्छौं जसलाई भिजुअल बेसिक सन्दर्भ बाकस बाट उचित सन्दर्भ चाहिन्छ। अन्यथा, VBA ले वस्तु पहिचान गर्दैन।
निम्न VBA कोड हेर्नुहोस्।
2548
यो कोड चलाउनुहोस्। तपाईंले उही पुरानो त्रुटि प्राप्त गर्नुहुनेछ "प्रयोगकर्ता-परिभाषित प्रकार परिभाषित छैन", शब्दकोश वस्तु हाइलाइट गर्दै। यो किनभने VBA ले शब्दकोश वस्तु लाई चिन्न सकेन, र यसलाई प्रयोगकर्ता-परिभाषित चरको रूपमा मान्छ, जुन गलत रूपमा परिभाषित गरिएको छैन।
अब सबैभन्दा ठूलो प्रश्न हो, यो त्रुटि कसरी समाधान गर्ने? सजिलो। यो त्रुटि समाधान गर्ने 2 तरिकाहरू छन्।
⧪ समाधान १: भिजुअल बक्स सन्दर्भ बाकसबाट आवश्यक सन्दर्भ जाँच गर्दै
यो यो समस्या समाधान गर्न स्मार्ट तरिका। जानुहोस् उपकरणहरू > सन्दर्भहरू भिजुअल बेसिक रिबनमा बटन। सन्दर्भहरू मा क्लिक गर्नुहोस्।
सन्दर्भहरू नामक संवाद बाकस खुल्नेछ। स्क्रोल गर्नुहोस् र खोज्नुहोस् Microsoft Scripting Runtime (यो तपाईंले प्रयोग गरिरहनुभएको वस्तुमा निर्भर गर्दछ। शब्दकोशवस्तु लाई Microsoft Scripting Runtime पहिचान गर्न आवश्यक छ। त्यसोभए, VBA कोडमा वस्तु प्रयोग गर्दा, तपाईंले VBA द्वारा पहिचान गर्नको लागि यसको पूर्वशर्त जान्नै पर्छ। थप जानकारीको लागि यो लिङ्कमा जानुहोस्।) यसलाई जाँच गर्नुहोस्।
अब फर्कनुहोस् र कोड चलाउनुहोस्। तपाईंले कुनै त्रुटिहरू प्राप्त गर्नुहुने छैन। किनभने VBA ले यस पटक शब्दकोश वस्तु चिन्न सक्छ।
⧪ समाधान २: यसलाई विशेष वस्तुको सट्टा शुद्ध वस्तुको रूपमा घोषणा गर्दै
यस समस्या समाधान गर्न अर्को तरिका छ। तपाईंले शब्दकोश वस्तु को सट्टा वस्तुलाई शुद्ध वस्तुको रूपमा घोषणा गर्न सक्नुहुन्छ।
कोडका निम्न लाइनहरूमा ध्यान दिनुहोस्।
4906
यहाँ मैले भ्यारीएबल MyDictionary लाई साधारण वस्तुको रूपमा घोषणा गरेको छु, Dictionary होइन। अब यदि तपाईंले यो कोड चलाउनुभयो भने, तपाईंले कुनै त्रुटि पाउनुहुनेछैन।