VBA स्क्रीन अपडेटिंग - कोड रनिंग प्रक्रिया में तेजी

एक्सेल VBA स्क्रीन अपडेटिंग

VBA स्क्रीन अपडेटिंग एक ऐसी संपत्ति है जिसका उपयोग कोड चलाते समय व्याकुलता से बचने या रोकने के लिए किया जाता है और स्क्रीन अपडेटिंग को बंद करके इसे तेज़ बना देता है। हम इस संपत्ति को झूठा बताकर स्क्रीन अपडेट को बंद कर सकते हैं।

अक्सर बार हम महसूस कर सकते हैं कि एक्सेल स्क्रीन मैक्रो चल रहा है, और हम लगभग उसी से निराश हो जाते हैं। लेकिन हम इन स्थितियों से कैसे निपटते हैं और कोड को सामान्य धीमी चीज की तुलना में तेजी से चलाते हैं?

स्क्रीन अपडेटिंग वह चीज है जिसे हम नोटिस कर सकते हैं जबकि एक्सेल मैक्रो चल रहा है। जब कार्य निष्पादित हो रहा है, तो हम नोटिस कर सकते हैं कि हमारी स्क्रीन मूल्यों को अपडेट कर रही है जब तक कि मैक्रो अपने निर्धारित कार्य को पूरा नहीं करता है। जैसा कि हमारी स्क्रीन टिमटिमाती या ताज़ा होती है, यह एक्सेल प्रोग्राम की मंदी की ओर जाता है और कार्य को पूरा करने में सामान्य से अधिक समय लेता है।

VBA में, हमारे पास "ScreenUpdating" नामक एक संपत्ति है और हम इस संपत्ति को FALSE पर सेट करते हैं ताकि यह कोड चलने के दौरान स्क्रीन अपडेट की प्रक्रिया को समाप्त कर दे।

इस लेख में, हम कोड चलने के दौरान ऑन-स्क्रीन एक्शन ड्रामा को देखने के लिए अलविदा कहेंगे। आज आप अपने कोड को अपने सामान्य समय से अधिक तेज और तेज बना देंगे।

स्क्रीन अपडेट करने की सुविधा का उपयोग कब करें?

मान लीजिए आपको इस तकनीक का उपयोग करने में कोई संदेह है। नीचे दिए गए बिंदुओं में देखें।

  • जब आप बड़ी संख्या में कोशिकाओं से गुजर रहे होते हैं।
  • एक्सेल VBA से ईमेल भेजना।
  • एक्सेल वर्कबुक के बीच स्विच करना।
  • नई कार्यपुस्तिकाएँ खोल रहा है।

VBA कोड में स्क्रीन अपडेटिंग फीचर का उपयोग कैसे करें?

उदाहरण # 1 - स्क्रीन अपडेट करना बंद करें

उदाहरण के लिए, नीचे दिए गए कोड को देखें।

कोड:

Sub Screen_Updating () डिम RowCount लॉन्ग डिम कॉलम के रूप में Dim MyNumber लॉन्ग MyNumber = 0 फॉर RowCount = 1 से 50 के लिए ColumnCount = 1 से 50 MyNumber = MyNumber + 1 सेल (RowCount, ColumnCount)। सेल सेक्शन (RowCount, Columnount)। .Value = MyNumber अगला स्तंभ पूर्व अगला RowCount समाप्ति उप

ऊपर से 50 प्रथम स्तंभ से सीरियल नंबर डालने के लिए एक नेस्टेड VBA लूप है वें स्तंभ और फिर से वापस और सीरियल नंबर 51 से दूसरी पंक्ति से 50 शुरू डालने आता वें स्तंभ।

इस तरह, यह 50 वें पंक्ति तक पहुंचने तक सम्मिलित होगा ।

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

इन सब से बचने के लिए, हम FALSE में स्क्रीन अपडेटिंग को जोड़ सकते हैं।

स्क्रीन अपडेटिंग फीचर को एक्सेस करने के लिए, हमें एप्लिकेशन ऑब्जेक्ट को एक्सेस करना होगा।

जैसा कि हम एप्लिकेशन ऑब्जेक्ट के साथ देख सकते हैं, हमारे पास कई गुण और विधियां हैं। इसलिए, IntelliSense सूची से स्क्रीन अपडेटिंग का चयन करें।

नोट: आपको स्क्रीन अपडेटिंग सुविधा को चर की घोषणा के तुरंत बाद लागू करना होगा।

स्क्रीन अपडेट करने वाली संपत्ति का चयन करने के बाद, एक समान चिह्न (=) डालें।

जैसा कि हम देख सकते हैं, दो बूलियन मान, अर्थात, FALSE और TRUE।

स्क्रीन अपडेटिंग को रोकने के लिए, FALSE करने के लिए स्थिति सेट करें।

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

चूंकि मैक्रो ने FALSE में स्क्रीन अपडेट करना निष्पादित किया है, इसलिए यह स्क्रीन को अपडेट करने की अनुमति नहीं देगा जबकि कोड अपने कार्य को निष्पादित कर रहा है।

उदाहरण # 2 -

हमेशा स्क्रीन अपडेट को अंत में सेट करें

मैंने कई लोगों को स्क्रीन अपडेटिंग को FALSE करने के लिए देखा है लेकिन मैक्रो के अंत में इसे TRUE पर सेट करना भूल गया।

मैक्रो के अंत में हमेशा स्क्रीन अपडेटिंग को TRUE पर सेट करें।

कोड:

उप स्क्रीन_उपडेटिंग () लंबे अनुप्रयोग के रूप में डिम रोउमाउंट लंबी डिम कॉलम कॉलम के रूप में लंबे अनुप्रयोग के रूप में। (RowCount, ColumnCount) ।Value = MyNumber अगला कॉलम अगला RowCount अनुप्रयोग ।स्क्रीनअपडेटिंग = सही अंत उप

दिलचस्प लेख...