वीबीए: त्रुटि होने पर सब से कैसे बाहर निकलें


कोई त्रुटि आने पर आप किसी उपप्रक्रिया से बाहर निकलने के लिए वीबीए में एक्ज़िट सब स्टेटमेंट का उपयोग कर सकते हैं।

व्यवहार में इस कथन का उपयोग करने का एक सामान्य तरीका यहां दिया गया है:

 Sub DivideValues()

Dim i As Integer
On Error GoTo ErrorMessage

For i = 1 To 10
    Range(" C " & i) = Range(" A " & i) / Range(" B " & i)
Next i
    
Exit Sub

Error Message:
    MsgBox “ An Error OccurredExit Sub
    
End Sub

यह विशेष मैक्रो श्रेणी A1:A10 में प्रत्येक मान को श्रेणी B1:B10 में संबंधित मान से विभाजित करने का प्रयास करता है।

यदि कोई त्रुटि होती है (उदाहरण के लिए, हम शून्य से विभाजित करने का प्रयास कर रहे हैं), तो ऑन एरर गोटो स्टेटमेंट वीबीए को एररमैसेज तक पहुंचने के लिए कहता है, जो एक संदेश बॉक्स बनाने के लिए कहता है जो उपयोगकर्ता को बताता है कि एक त्रुटि हुई है और Exist Sub का उपयोग करके उपप्रक्रिया को समाप्त करें। . कथन.कथन.

निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस वाक्यविन्यास का उपयोग कैसे करें।

उदाहरण: वीबीए में त्रुटि के मामले में एक उप का अस्तित्व कैसे बनाया जाए

मान लीजिए कि हमारे पास कॉलम ए और बी में मानों की निम्नलिखित सूची है:

अब मान लीजिए कि हम कॉलम ए में प्रत्येक मान को कॉलम बी में संबंधित मान से विभाजित करने के लिए निम्नलिखित मैक्रो बनाते हैं और परिणाम कॉलम सी में प्रदर्शित करते हैं:

 Sub DivideValues()

Dim i As Integer

For i = 1 To 10
    Range(" C " & i) = Range(" A " & i) / Range(" B " & i)
Next i
    
End Sub

जब हम इस मैक्रो को चलाते हैं, तो हमें निम्नलिखित त्रुटि प्राप्त होती है:

हमें यह त्रुटि इसलिए प्राप्त हो रही है क्योंकि एक्सेल शीट की चौथी पंक्ति में हमने शून्य से विभाजित करने का प्रयास किया था।

यदि यह त्रुटि होने पर हम उपप्रक्रिया से बाहर निकलना चाहते हैं, तो हम एग्जिट सब स्टेटमेंट का उपयोग इस प्रकार कर सकते हैं:

 Sub DivideValues()

Dim i As Integer
On Error GoTo ErrorMessage

For i = 1 To 10
    Range(" C " & i) = Range(" A " & i) / Range(" B " & i)
Next i
    
Exit Sub

Error Message:
    MsgBox “ An Error OccurredExit Sub
    
End Sub

जब हम इस मैक्रो को चलाते हैं, तो उप-प्रक्रिया किसी त्रुटि का सामना करने से पहले सभी संभावित विभाजन समस्याओं को हल करती है, फिर एक संदेश बॉक्स प्रकट होता है जो हमें बताता है कि एक त्रुटि हुई है और वीबीए बस उप-प्रक्रिया में मौजूद है:

आउटपुट त्रुटि पर VBA के अंतर्गत

नोट : आप वीबीए में एग्जिट स्टेटमेंट का पूरा दस्तावेज यहां पा सकते हैं।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि वीबीए में अन्य सामान्य कार्य कैसे करें:

VBA का उपयोग करके फ़ोल्डर्स कैसे बनाएं
VBA का उपयोग करके फ़ोल्डर्स को कैसे हटाएं
VBA का उपयोग करके फ़ाइलें कैसे हटाएं

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *