/ / एक्सेल वीबीए एप्लीकेशन ऑब्जेक्ट

एक्सेल वीबीए एप्लीकेशन ऑब्जेक्ट

WorksheetFunction | ScreenUpdating | DisplayAlerts | हिसाब

सभी वस्तुओं की मां एक्सेल स्वयं ही है। हम इसे कहते हैं आवेदन वस्तु। एप्लिकेशन ऑब्जेक्ट कई एक्सेल से संबंधित विकल्पों तक पहुंच प्रदान करता है।

WorksheetFunction

आप वर्कशीट फंक्शन प्रॉपर्टी का उपयोग कर सकते हैं एक्सेल VBA एक्सेल फ़ंक्शन तक पहुंचने के लिए।

1. उदाहरण के लिए, अपने वर्कशीट पर एक कमांड बटन रखें और निम्न कोड लाइन जोड़ें:

Range("A3").Value = Application.WorksheetFunction.Average(Range("A1:A2"))

जब आप वर्कशीट पर कमांड बटन पर क्लिक करते हैं, तो एक्सेल वीबीए सेल ए 1 और सेल ए 2 में मानों की औसत गणना करता है और परिणाम सेल ए 3 में रखता है।

एक्सेल वीबीए में वर्कशीट समारोह

नोट: आवेदन के बजाय। वर्कशीट समारोह।औसत, वर्कशीट फंक्शन का उपयोग करें। औसत। यदि आप सूत्र बार को देखते हैं, तो आप देख सकते हैं कि फ़ॉर्मूला स्वयं सेल ए 3 में डाला नहीं गया है। फॉर्मूला को सेल ए 3 में डालने के लिए, निम्न कोड लाइन का उपयोग करें:

Range("A3").Value = "=AVERAGE(A1:A2)"

ScreenUpdating

कभी-कभी आपको कोड निष्पादित करते समय स्क्रीन अपडेटिंग (झिलमिलाहट से बचने के लिए) अक्षम करने में उपयोगी लग सकता है। नतीजतन, आपका कोड तेजी से चल जाएगा।

1. उदाहरण के लिए, अपने वर्कशीट पर एक कमांड बटन रखें और निम्न कोड लाइनें जोड़ें:

Dim i As Integer

For i = 1 To 10000
    Range("A1").Value = i
Next i

जब आप वर्कशीट पर कमांड बटन पर क्लिक करते हैं, तो एक्सेल वीबीए प्रत्येक मान को एक सेकंड का एक छोटा सा अंश प्रदर्शित करता है और इसमें कुछ समय लग सकता है।

ScreenUpdating

2. प्रक्रिया को तेज़ करने के लिए, कोड को निम्नानुसार अपडेट करें।

Dim i As Integer

Application.ScreenUpdating = False

For i = 1 To 10000
    Range("A1").Value = i
Next i

Application.ScreenUpdating = True

नतीजतन, आपका कोड बहुत तेजी से चलाएगा और आपको केवल अंतिम परिणाम (10000) दिखाई देगा।

DisplayAlerts

आप Excel VBA को कोड निष्पादित करते समय अलर्ट प्रदर्शित नहीं करने के लिए निर्देश दे सकते हैं।

1. उदाहरण के लिए, अपने वर्कशीट पर एक कमांड बटन रखें और निम्न कोड लाइन जोड़ें:

ActiveWorkbook.Close

जब आप वर्कशीट पर कमांड बटन पर क्लिक करते हैं, तो एक्सेल वीबीए आपकी एक्सेल फ़ाइल बंद कर देता है और आपके द्वारा किए गए परिवर्तनों को सहेजने के लिए कहता है।

DisplayAlerts

2. एक्सेल वीबीए को कोड निष्पादित करते समय इस चेतावनी को प्रदर्शित न करने के लिए, कोड को निम्नानुसार अपडेट करें।

Application.DisplayAlerts = False

ActiveWorkbook.Close

Application.DisplayAlerts = True

नतीजतन, एक्सेल वीबीए ने आपके द्वारा किए गए परिवर्तनों को सहेजने के लिए बिना पूछे आपकी एक्सेल फ़ाइल बंद कर दी है। कोई भी परिवर्तन गुम हो गया है।

हिसाब

डिफ़ॉल्ट रूप से, गणना स्वचालित रूप से सेट की जाती है। नतीजतन, एक्सेल प्रत्येक बार फॉर्मूला परिवर्तन को प्रभावित करने वाले मान को स्वचालित रूप से कार्यपुस्तिका का पुनर्मूल्यांकन करता है। यदि आपकी कार्यपुस्तिका में कई जटिल सूत्र हैं, तो आप मैन्युअल की गणना सेट करके अपने मैक्रो को तेज़ी से बढ़ा सकते हैं।

1. उदाहरण के लिए, अपने वर्कशीट पर एक कमांड बटन रखें और निम्न कोड लाइन जोड़ें:

Application.Calculation = xlCalculationManual

जब आप वर्कशीट पर कमांड बटन पर क्लिक करते हैं, तो एक्सेल वीबीए मैन्युअल के लिए गणना सेट करता है।

2. आप फ़ाइल, विकल्प, सूत्रों पर क्लिक करके इसे सत्यापित कर सकते हैं।

गणना विकल्प

3. अब जब आप सेल ए 1 के मान को बदलते हैं, तो सेल बी 1 का मान पुन: गणना नहीं किया जाता है।

मैन्युअल गणना

आप F9 दबाकर मैन्युअल रूप से कार्यपुस्तिका को फिर से समझ सकते हैं।

4. ज्यादातर स्थितियों में, आप अपने कोड के अंत में स्वचालित रूप से स्वचालित रूप से गणना सेट करेंगे। इसे प्राप्त करने के लिए बस निम्नलिखित कोड लाइन जोड़ें।

Application.Calculation = xlCalculationAutomatic
यह भी पढ़ें: