مواد جي جدول
سڀ کان وڌيڪ عام غلطين مان هڪ آهي جيڪو اسان کي منهن ڏيڻ دوران ڪم ڪري رهيا آهيون VBA Excel ۾ اهو آهي ته صارف جي بيان ڪيل قسم جي وضاحت نه ڪئي وئي آهي. هن آرٽيڪل ۾، مان توهان کي ڏيکاريندس ته هي غلطي ڇو ٿي آهي ۽ هن غلطي کي ڪيئن حل ڪجي.
ڊائون لوڊ ڪريو مشق ورڪ بڪ
ھي مضمون پڙھي رھيا آھيون. User-defined Type Not Defined.xlsm
2 سبب ۽ حل صارف جي وضاحت Type Not Defined in Excel VBA
هتي آهن 2 اهم مسئلا ان جي پويان هڪسل VBA ۾ اڪثر سامهون ايندڙ نقص. اچو ته انهن کي تفصيل سان ڳوليون ۽ انهن کي حل ڪرڻ جا طريقا ڳوليون.
1. متغيرن جو اعلان ڪرڻ دوران اسپيلنگ جي غلطي
هي هن غلطي جي پويان وڏو سبب آهي. اڪثر وقت، غلطي "User-defined Type not defined" اسپيلنگ جي غلطي جي ڪري پيدا ٿئي ٿي جڏهن متغيرن جو اعلان ڪيو وڃي.
ڪوڊن جون هيٺيون لائينون ڏسو.
1533
جيڪڏهن توهان هن ڪوڊ کي هلائيندا آهيو، توهان کي هڪ غلطي باڪس ملندو جيڪو توهان کي غلطي جي موجودگي بابت مطلع ڪري ٿو "صارف جي وضاحت ڪيل قسم جي وضاحت نه ڪئي وئي". ان سان گڏ، توهان کي نيري رنگ ۾ نمايان ٿيل ڪوڊ جي ٻي لائين ملندي، جتي مون “strng” جي جاءِ تي “strng” لکيو آهي.
مون کي اميد آهي ته توهان پوائنٽ حاصل ڪيو. VBA متغير جي قسم کي سڃاڻي نه سگهيو “strng” ، ان ڪري ان کي هڪ نئون متغير قسم سمجهيو ۽ سوچيو ته توهان ان کي ڪٿي بيان ڪيو آهي. پر جڏهن اهوڏٺائين ته توهان ڪٿي به ان جو اعلان نه ڪيو آهي، ان ۾ هڪ غلطي پيدا ٿي آهي.
تنهنڪري، سادي VBA ڪوڊ هلائڻ دوران، جيڪڏهن توهان کي ڪنهن به صورت ۾ اها غلطي ملي ٿي، ته پهريان پنهنجي مختلف قسم جي سڀني اسپيلنگ کي چيڪ ڪريو.
2. مناسب حوالن جو فقدان
هي هن غلطي جي پويان هڪ ٻيو سبب آهي. اهو صحيح حوالن جي کوٽ آهي. ڪڏهن ڪڏهن اسان پنهنجي ڪوڊس ۾ ڪجهه شيون استعمال ڪندا آهيون جن کي Visual Basic Reference باڪس مان صحيح حوالن جي ضرورت هوندي آهي. ٻي صورت ۾، VBA اعتراض کي نٿو سڃاڻي.
هيٺ ڏسو VBA ڪوڊ.
5897
هن ڪوڊ کي هلايو. توھان کي ساڳي پراڻي غلطي ملندي "User-defined Type not defined"، نمايان ڪندي Dictionary Object . اهو ان ڪري جو VBA Dictionary Object کي سڃاڻي نه سگهيو، ۽ ان کي استعمال ڪندڙ جي وضاحت ڪيل متغير سمجهي، جنهن جي وضاحت غلطي سان نه ڪئي وئي آهي.
هاڻي سڀ کان وڏو سوال اهو آهي ته، هن غلطي کي ڪيئن حل ڪجي؟ آسان. ھن نقص کي حل ڪرڻ جا 2 طريقا آھن.
⧪ حل 1: Visual Box Reference Box مان Prerequisite Reference چيڪ ڪرڻ
ھي آھي هن مسئلي کي حل ڪرڻ لاء بهترين طريقو. ڏانھن وڃو ٽولز > حوالو بٽڻ ۾ بصري بنيادي ربن. References تي ڪلڪ ڪريو.
هڪ ڊائلاگ باڪس جنهن کي References کلي ويندو. اسڪرول ڪريو ۽ ڳولھيو Microsoft Scripting Runtime (ھي ان شئي تي منحصر آھي جيڪو توھان استعمال ڪري رھيا آھيو. The لغتاعتراض جي ضرورت آهي Microsoft Scripting Runtime سڃاڻپ ٿيڻ لاءِ. تنهن ڪري، VBA ڪوڊ ۾ ڪنهن شئي کي استعمال ڪرڻ دوران، توهان کي لازمي طور ڄاڻڻ گهرجي ته ان جي سڃاڻپ ڪئي وڃي VBA. وڌيڪ معلومات لاءِ هن لنڪ تي وڃو.). ان کي چيڪ ڪريو.
هاڻي واپس اچو ۽ ڪوڊ کي هلايو. توهان کي ڪا به غلطي نه ملندي. ڇاڪاڻ ته VBA هن ڀيري ڊڪشنري شئي کي سڃاڻي سگهي ٿو.
⧪ حل 2: ان کي مخصوص شئي جي بجاءِ خالص شئي قرار ڏيڻ <3
هن مسئلي کي حل ڪرڻ جو ٻيو طريقو آهي. توھان اعتراض کي خالص شئي طور بيان ڪري سگھو ٿا، بجاءِ Dictionary Object .
ڪوڊن جي ھيٺين لائينن کي ڏسو.
4445
<0 هتي مون متغير MyDictionary کي هڪ سادي شئي قرار ڏنو آهي، نه هڪ Dictionary. هاڻي جيڪڏهن توهان هي ڪوڊ هلائيندا ته توهان کي ڪا به غلطي نه ٿيندي.