VBA कार्यपत्रक - वीबीए में वर्कशीट ऑब्जेक्ट का उपयोग कैसे करें?

एक्सेल VBA वर्कशीट

एक्सेल एक कार्यपुस्तिका है और उस कार्यपुस्तिका में, इसमें कार्यपत्रक या पत्रक हैं। वीबीए में वर्कशीट की अवधारणा को समझना बहुत महत्वपूर्ण है क्योंकि हर समय हम वर्कशीट के साथ काम करते हैं। सामान्य एक्सेल फ़ाइल में, हम इसे शीट के रूप में कहते हैं लेकिन VBA शब्दावली में इसे "वर्कशीट" कहा जाता है। वर्कशीट के सभी संग्रहों को "वर्कशीट" कहा जाता है।

VBA में, वर्कशीट एक ऑब्जेक्ट है। वर्कशीट को संदर्भित करने के दो तरीके हैं एक "वर्कशीट" ऑब्जेक्ट का उपयोग करके और दूसरा "शीट्स" ऑब्जेक्ट का उपयोग करके।

मुझे पता है कि आपका सवाल है कि उनके बीच अंतर क्या है। एक्सेल में, हम दो प्रकार की चादरें देख सकते हैं, एक नियमित कार्यपत्रक है, और एक अन्य चार्ट शीट है।

एक्सेल में वर्कशीट टैब चार्ट शीट को छोड़कर वर्कबुक में केवल वर्कशीट को मानता है। "पत्रक" चार्ट शीट सहित कार्यपुस्तिका में सभी वर्कशीट पर विचार करता है। उदाहरण के लिए, नीचे दी गई छवि देखें।

उपरोक्त में, हमारे पास कुल 5 शीट हैं। इन 5 शीट में से 3 वर्कशीट हैं, और 2 चार्ट शीट हैं।

यहाँ "वर्कशीट" काउंट 3 है, और "शीट्स" काउंट 2 है।

अब, नीचे की छवि देखें।

यहां सभी शीट वर्कशीट हैं, इसलिए "वर्कशीट" और "शीट्स" दोनों की गिनती 3 है।

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

VBA वर्कशीट का सिंटैक्स

जैसा कि मैंने बताया, वर्कशीट एक वस्तु चर है। हालाँकि, इसका सिंटैक्स भी है।

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

उदाहरण के लिए, वर्कशीट (1)। चयन का अर्थ है वर्कबुक की पहली वर्कशीट का चयन करना। इससे कोई फर्क नहीं पड़ता कि वर्कशीट का नाम क्या है; वर्कबुक में पहले जो भी वर्कशीट डाली गई है, उसका चयन किया जाएगा।

हम वर्कशीट को उसके नाम से भी संदर्भित कर सकते हैं। हमें पूर्ण का उल्लेख करने की आवश्यकता है क्योंकि यह डबल-कोट्स में एक वर्कशीट नाम है।

उदाहरण के लिए, वर्कशीट ("सेल्स शीट")। सेलेक्ट का अर्थ है "सेल्स शीट" नाम की शीट का चयन करें । यहां यह कोई फर्क नहीं पड़ता कि वर्कशीट की संख्या क्या है यह हमेशा निर्दिष्ट वर्कशीट का चयन करता है।

वीबीए में वर्कशीट ऑब्जेक्ट का उपयोग कैसे करें?

उदाहरण 1

उदाहरण के लिए, मान लें कि आपकी कार्यपुस्तिका में कुल 5 शीट हैं, और उन कार्यपत्रकों का नाम "वर्कशीट 1", "वर्कशीट 2", "वर्कशीट 3", "चार्ट शीट 1" और "चार्ट शीट 2" हैं।

यदि मैं वर्कशीट को चुनने के लिए नंबर का उपयोग करता हूं, तो मैं नंबर को वर्कशीट संदर्भ के रूप में उपयोग कर सकता हूं।

वर्कशीट (2)। सेलेक्ट का मतलब है कि यह वर्कबुक की दूसरी वर्कशीट को सलेक्ट करेगा।

कोड:

उप कार्यपत्रक_प्रदर्शन 1 () कार्यपत्रक (2)। चयन समाप्ति उप

मैं F5 कुंजी या मैन्युअल का उपयोग करके इस कोड को चलाऊंगा और परिणाम देखूंगा।

अब मैं शीट नंबर को 3 में बदल दूंगा।

कोड:

उप कार्यपत्रक_प्रदर्शन 1 () कार्यपत्रक (3)। चयन समाप्ति उप

अब देखें कि जब आप कोड को मैन्युअल रूप से चलाते हैं या F5 कुंजी कोड का उपयोग करते हैं तो क्या होता है।

आप ऊपर छवि को देखें, तो यह 4 का चयन किया था वें कार्यपत्रक जब मैं 3 चुनने के लिए कहा वां कार्यपत्रक।

ऐसा इसलिए है क्योंकि मैंने वर्कशीट ऑब्जेक्ट का उपयोग किया है, न कि शीट्स ऑब्जेक्ट का। जैसा कि मैंने पहले बताया, "वर्कशीट" ऑब्जेक्ट केवल वर्कशीट मानता है, चार्ट शीट नहीं।

कार्यपुस्तिका में सभी शीटों की तीसरी शीट का चयन करने के लिए, शीट ऑब्जेक्ट का उपयोग करें।

कोड:

उप कार्यपत्रक_प्रदर्शन 1 ()

शीट्स (3)। चयन करें

अंत उप

अब यह सटीक तीसरी शीट का चयन करेगा।

उदाहरण # 2 - नाम से कार्यपत्रकों का चयन करें

शीटों को उनके नाम से चुनना, शीट को संदर्भित करने का सटीक तरीका है। उदाहरण के लिए, यदि हम "वर्कशीट 3" शीट का चयन करना चाहते हैं, तो आप नीचे दिए गए कोड का उपयोग कर सकते हैं।

कोड:

उप कार्यपत्रक_प्रदर्शन 2 () कार्यपत्रक ("कार्यपत्रक 3")। अंत उप का चयन करें

यह सटीक शीट का चयन करेगा; इससे कोई फर्क नहीं पड़ता कि इसे कार्यपुस्तिका में कहाँ रखा गया है।

लेकिन अगर आपने "वर्क्सशीट" ऑब्जेक्ट के साथ चार्ट शीट तक पहुंचने की कोशिश की, तो हमें "सब्सक्रिप्शन आउट ऑफ रेंज त्रुटि" मिलेगी।

कोड:

उप कार्यपत्रक_प्रदर्शन 2 () कार्यपत्रक ("चार्ट शीट 1")। अंत उप का चयन करें

इस कोड को F5 कुंजी या मैन्युअल रूप से चलाएं और परिणाम देखें।

उदाहरण # 3 - वर्कशीट नाम के साथ समस्या

इसके नाम से चादरों को संदर्भित करने के साथ एक और समस्या है। यदि कोई व्यक्ति वर्कशीट का नाम बदलता है, तो फिर से, हमें "सब्सक्रिप्शन आउट ऑफ रेंज त्रुटि" मिलेगी।

इस समस्या को हल करने के लिए ALT + F11 कुंजी दबाकर विज़ुअल बेसिक एडिटर पर जाएँ ।

अब शीट नाम चुनें और गुण विंडो देखने के लिए F4 कुंजी दबाएं ।

इन गुणों में, विंडो आपके नाम के वर्कशीट का नाम बदल देती है।

यहां एक दिलचस्प बात यह है कि भले ही हमने वर्कशीट का नाम "वर्कशीट 1" से बदलकर "डब्लूएस 1" कर दिया हो, फिर भी हम उसी नाम को वर्कबुक में देख सकते हैं।

अब हम इस पत्रक को "WS1" नाम से संदर्भित कर सकते हैं।

कोड:

उप कार्यपत्रक_प्रदर्शन 2 () कार्यपत्रक ("WS1")। अंत उप का चयन करें

अब इससे कोई फर्क नहीं पड़ता कि जो कोई भी वर्कशीट का नाम बदलता है। फिर भी, हमारा कोड एक ही शीट को संदर्भित करता है जब तक कि यह दृश्य मूल संपादक में नहीं बदल रहा है।

उदाहरण # 4 - कार्यपुस्तिका में कुल शीट्स की गिनती प्राप्त करें

एक वर्कशीट एक ऑब्जेक्ट है, और हम इसके साथ जुड़े सभी गुणों और विधियों का उपयोग कर सकते हैं। वर्कशीट के साथ हम क्या करते हैं?

हम वर्कशीट लगाते हैं। हम वर्कशीट का नाम बदल देते हैं। हम वर्कशीट और कई अन्य चीजों को हटाते हैं जो हम इसके साथ करते हैं।

ऑब्जेक्ट "कार्यपत्रक" दर्ज करें और उनके साथ सभी विकल्पों को देखने के लिए एक बिंदु डालें।

वर्कशीट की गिनती प्राप्त करने के लिए, VBA काउंट प्रॉपर्टी का उपयोग करता है।

कोड:

सब वर्कशीट_एक्सप्लोम 3 () डिम आई अस लॉन्ग आई = वर्कशीट।काउंट मिसगॉक्स आई एंड सब

यह कार्यपत्रकों की गिनती दिखाएगा।

भले ही 5 शीट हैं, हमें 3 के रूप में गिनती मिली क्योंकि अन्य 2 शीट चार्ट शीट हैं।

शीट्स की समग्र गणना प्राप्त करने के लिए, "शीट्स" ऑब्जेक्ट का उपयोग करता है।

कोड:

सब वर्कशीट_एक्सप्लोम 3 () डिम आई अस लॉन्ग आई = शीट्स।काउंट मिसगॉक्स आई एंड सब

यह चादरों की पूरी गिनती दिखाएगा।

उदाहरण # 5 - वर्कशीट ऑब्जेक्ट का उपयोग करने के तरीके

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

नई शीट जोड़ने के लिए।

कार्यपत्रक

वर्कशीट को हटाने के लिए

वर्कशीट ("शीट नाम") हटाएं

वर्कशीट का नाम बदलने के लिए

वर्कशीट ("शीट नाम")। नाम = "नया नाम"

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