VBA मध्ये एक्सेल सबस्क्रिप्ट श्रेणीबाहेर त्रुटी (5 सोल्यूशन्ससह)

  • ह्याचा प्रसार करा
Hugh West

या लेखात, आम्ही तुम्हाला एक्सेल VBA मधील “ सबस्क्रिप्ट श्रेणीबाहेर ” त्रुटीची कारणे आणि ती कशी सोडवायची ते दाखवू.

सराव टेम्प्लेट डाउनलोड करा

तुम्ही येथून विनामूल्य सराव एक्सेल टेम्पलेट डाउनलोड करू शकता.

VBA.xlsm मध्ये सबस्क्रिप्ट आउट ऑफ रेंज एरर

VBA मध्ये सबस्क्रिप्ट आउट ऑफ रेंज एरर म्हणजे काय?

VBA सबस्क्रिप्ट श्रेणीबाहेर त्रुटी उद्भवते जेव्हा आम्ही एक्सेलमध्ये अस्तित्वात नसलेला सदस्य किंवा अस्तित्वात नसलेल्या अॅरे कलेक्शनमध्ये प्रवेश करण्याचा प्रयत्न करतो. ही एक्सेलमधील VBA कोडिंगमधील “ रन-टाइम एरर 9 ” प्रकारची त्रुटी आहे.

एरर सहसा यासारखी दिसते,

VBA मध्ये सबस्क्रिप्टच्या आउट ऑफ रेंज एररची 5 कारणे

हा विभाग होण्याच्या 5 सर्वात सामान्य कारणांची चर्चा करेल. सबस्क्रिप्ट श्रेणीबाहेर त्रुटी आणि त्यावर काय उपाय आहेत.

1. अस्तित्वात नसलेल्या वर्कबुकसाठी VBA मध्ये सबस्क्रिप्ट आउट ऑफ रेंज एरर

जेव्हा तुम्ही उघडलेले नसलेल्या एक्सेल वर्कबुकमध्ये प्रवेश करण्याचा प्रयत्न कराल, तेव्हा तुम्हाला “ सबस्क्रिप्ट श्रेणीबाहेर ” एरर मिळेल.

आम्ही वर दर्शविलेला कोड चालवा करण्याचा प्रयत्न केल्यास, आम्हाला त्रुटी मिळेल कारण “ नावाची कोणतीही एक्सेल वर्कबुक नाही. विक्री ” जी सध्या उघडली आहे.

सोल्यूशन

या त्रुटीचे निराकरण करण्यासाठी, प्रथम एक्सेल वर्कबुक उघडा ज्यामध्ये तुम्हाला प्रवेश करायचा आहे आणि नंतर चालवा. मॅक्रो.

2. अस्तित्वात नसलेल्यांसाठी VBA मध्ये श्रेणीबाहेरची सबस्क्रिप्ट त्रुटीवर्कशीट

जेव्हा तुम्ही एक्सेल वर्कबुकमध्ये अस्तित्वात नसलेल्या वर्कशीटमध्ये प्रवेश करण्याचा प्रयत्न करता तेव्हा तुम्हाला VBA मध्ये “ सबस्क्रिप्ट श्रेणीबाहेर ” त्रुटी देखील मिळेल .

आम्ही वर दाखवलेला कोड रन करण्‍याचा प्रयत्‍न केल्यास, आम्हाला एरर मिळेल कारण तेथे “ शीट2 <नाही. 2>” वर्कशीट आमच्या वर्कबुकमध्ये उपलब्ध आहे.

सोल्यूशन

या त्रुटीचे निराकरण करण्यासाठी, तुमच्याकडे एक्सेल शीट असणे आवश्यक आहे ज्यामध्ये तुम्हाला चालू वर्कबुकमध्ये प्रवेश करायचा आहे आणि नंतर मॅक्रो चालवा.

3. अपरिभाषित अॅरे एलिमेंट्ससाठी VBA मध्ये सबस्क्रिप्ट आउट ऑफ रेंज एरर

जर तुम्ही डायनॅमिक अॅरेची लांबी यासह परिभाषित केली नाही Excel VBA मध्ये DIM किंवा REDIM शब्द, नंतर तुम्हाला “ सबस्क्रिप्ट श्रेणीबाहेर ” त्रुटी मिळेल.

<0

वरील कोडमध्ये, आम्ही 5 ते 10 च्या परिमाणात अॅरे घोषित केला आहे परंतु अनुक्रमणिका 3 च्या सबस्क्रिप्टचा संदर्भ दिला आहे, जो 5 पेक्षा कमी आहे.

उपाय

हे सोडवण्यासाठी, अ‍ॅरे डायमेंशनमधील इंडेक्स घोषित करा.

हा भाग कोडचा e अगदी बरोबर काम करतो कारण येथे आम्ही इंडेक्स 5 च्या सबस्क्रिप्टचा संदर्भ दिला आहे, जी 5 ते 10 च्या रेंजमध्ये आहे.

4. अवैध संकलनासाठी VBA मध्ये सबस्क्रिप्ट श्रेणीबाहेरची त्रुटी/ अॅरे

जेव्हा सबस्क्रिप्ट संभाव्य सबस्क्रिप्टच्या श्रेणीपेक्षा मोठी किंवा लहान असेल, तेव्हा सबस्क्रिप्ट श्रेणीबाहेर एरर येईल.

वरील उदाहरण पहा, आम्हीव्हेरिएबलला अॅरे म्हणून घोषित केले, परंतु प्रारंभ आणि समाप्ती बिंदू नियुक्त करण्याऐवजी, आम्ही थेट 20 च्या मूल्यासह प्रथम अॅरे नियुक्त केला आहे.

समाधान

ला या समस्येचे निराकरण करण्यासाठी, आम्हाला अॅरेची लांबी प्रारंभ आणि समाप्ती बिंदूसह नियुक्त करणे आवश्यक आहे.

हा कोड कोणतीही त्रुटी देत ​​नाही कारण आता आम्ही अॅरे घोषित केले आहे. 1 च्या प्रारंभ बिंदूसह आणि 5 च्या समाप्ती बिंदूसह.

5. शॉर्टहँड स्क्रिप्टसाठी VBA मध्ये सबस्क्रिप्ट आउट ऑफ रेंज एरर

तुम्ही शॉर्टहँड वापरल्यास सबस्क्रिप्ट आणि ते अवैध घटकाचा संदर्भ देते तर तुम्हाला एक्सेल VBA मध्ये “ सबस्क्रिप्ट श्रेणीबाहेर ” त्रुटी मिळेल. उदाहरणार्थ, [A2] हा ActiveSheet.Range(A2) साठी शॉर्टहँड आहे.

सोल्यूशन

निश्चित करण्यासाठी यासाठी, तुम्हाला संग्रहासाठी वैध की नाव आणि इंडेक्स वापरावे लागेल. ActiveSheet.Range(A2) लिहिण्याऐवजी, तुम्ही फक्त [ A2 ] लिहू शकता.

VBA मध्ये एक्सेल सबस्क्रिप्टचा फायदा रेंजच्या बाहेर त्रुटी

  • VBA सबस्क्रिप्ट श्रेणीबाहेर त्रुटी किंवा " रन-टाइम एरर 9 " ही त्रुटी जिथे आली आहे तिची स्थिती निर्दिष्ट करण्यासाठी खरोखर उपयुक्त आहे VBA कोडमध्ये.
  • ही त्रुटी वापरकर्त्यांना त्रुटीचा प्रकार शोधण्यात मदत करते जेणेकरुन ते तपासू शकतील आणि त्रुटी कोडनुसार उपाय शोधू शकतील.
<4 लक्षात ठेवण्‍याच्‍या गोष्‍टी
  • जसे ही एरर कोडची प्रत्येक पायरी संकलित करते ते आम्‍हाला नेमका कोणता भाग निर्देशित करण्‍यासाठीज्या कोडसाठी आम्हाला प्रत्यक्षात कृती करायची आहे, त्यामुळे तुमच्याकडे कोडची मोठी ओळ असल्यास F8 की दाबून कोडची प्रत्येक ओळ एक-एक करून संकलित करणे चांगले आहे.
<4 निष्कर्ष

या लेखाने तुम्हाला एक्सेल सबस्क्रिप्ट श्रेणीबाहेर त्रुटी VBA ची कारणे आणि उपाय दाखवले आहेत. मला आशा आहे की हा लेख तुमच्यासाठी खूप फायदेशीर ठरला आहे. विषयाशी संबंधित कोणतेही प्रश्न मोकळ्या मनाने विचारा.

ह्यू वेस्ट हे एक अत्यंत अनुभवी एक्सेल ट्रेनर आणि विश्लेषक आहेत ज्याचा उद्योगात 10 वर्षांपेक्षा जास्त अनुभव आहे. त्यांनी अकाउंटिंग आणि फायनान्समध्ये बॅचलर डिग्री आणि बिझनेस अॅडमिनिस्ट्रेशनमध्ये पदव्युत्तर पदवी घेतली आहे. ह्यूला शिकवण्याची आवड आहे आणि त्याने एक अद्वितीय शिकवण्याचा दृष्टीकोन विकसित केला आहे ज्याचे अनुसरण करणे आणि समजणे सोपे आहे. एक्सेलच्या त्यांच्या तज्ञ ज्ञानाने जगभरातील हजारो विद्यार्थ्यांना आणि व्यावसायिकांना त्यांची कौशल्ये सुधारण्यास आणि त्यांच्या करिअरमध्ये उत्कृष्ट कामगिरी करण्यास मदत केली आहे. त्याच्या ब्लॉगद्वारे, ह्यू आपले ज्ञान जगासोबत सामायिक करतो, व्यक्ती आणि व्यवसायांना त्यांच्या पूर्ण क्षमतेपर्यंत पोहोचण्यात मदत करण्यासाठी विनामूल्य एक्सेल ट्यूटोरियल आणि ऑनलाइन प्रशिक्षण ऑफर करतो.