VBA कार्यपुस्तिका - एक्सेल VBA वर्कबुक ऑब्जेक्ट का उपयोग करने के उदाहरण

एक्सेल VBA वर्कबुक

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

एक्सेल प्लेटफॉर्म में एक्सेल फाइल को "वर्कबुक" कहा जाता है, खासकर VBA में। हम इसे कभी फ़ाइल नहीं कहते; बल्कि, हम इसे "वर्कबुक" कहते हैं

कार्यपुस्तिका का संदर्भ देकर, हम इससे संबंधित सभी कार्य कर सकते हैं। कुछ महत्वपूर्ण कार्य "ओपन वर्कबुक," "कार्यपुस्तिका सहेजें", "कार्यपुस्तिका सहेजें", और "कार्यपुस्तिका बंद करें" हैं। हम उन कार्यपुस्तिकाओं का चयन कर सकते हैं, जिन्हें खोल दिया गया है।

वाक्य - विन्यास

अब, देखें कि वर्कबुक का सिंटैक्स क्या है।

एक इंडेक्स कुछ भी नहीं है कि आप किस कार्यपुस्तिका का चयन करना चाहते हैं। हम वर्कबुक नंबर या वर्कबुक नाम से वर्कबुक को देख सकते हैं।

VBA वर्कबुक ऑब्जेक्ट कोड का उपयोग

उदाहरण 1

उदाहरण के लिए, मेरे पास अभी दो फाइलें हैं। पहली कार्यपुस्तिका का नाम "फ़ाइल 1" है और दूसरी कार्यपुस्तिका का नाम "फ़ाइल 2" है।

अब मैं तीसरी फाइल में कोड लिख रहा हूं। इस फ़ाइल से, मैं "फ़ाइल 1" नाम की कार्यपुस्तिका को सक्रिय करना चाहता हूं।

चरण 1: वीबीए उपप्रोसेसर बनाकर मैक्रो शुरू करें।

कोड:

उप कार्यपुस्तिका_Example1 () उप सब

चरण 2: अब कार्यपुस्तिका ऑब्जेक्ट का चयन करें।

चरण 3: अब, उस कार्यपुस्तिका में प्रवेश करें जिसे हम सक्रिय करना चाहते हैं।

कोड:

उप-कार्यपुस्तिका_Example1 () कार्यपुस्तिकाएँ ("फ़ाइल 1 समाप्ति उप।"

चरण 4: कार्यपुस्तिका नाम दर्ज करने के बाद, हमें फ़ाइल एक्सटेंशन भी दर्ज करना होगा। मैंने इस कार्यपुस्तिका को एक नियमित कार्यपुस्तिका, अर्थात "xlsx" कार्यपुस्तिका के रूप में सहेजा है ।

कोड:

उप कार्यपुस्तिका_Example1 () कार्यपुस्तिकाएँ ("फ़ाइल 1.xlsx") उप उप

चरण 5: अब, हमें यह तय करने की आवश्यकता है कि हम इस कार्यपुस्तिका के साथ क्या करना चाहते हैं। इस कार्यपुस्तिका के साथ उपलब्ध सभी विकल्पों को देखने के लिए डॉट दर्ज करें।

चरण 6: अब, हमें कार्यपुस्तिका को सक्रिय करने की आवश्यकता है, विधि को "सक्रिय करें" के रूप में चुनें।

कोड:

उप-कार्यपुस्तिका_Example1 () कार्यपुस्तिकाएँ ("फ़ाइल 1.xlsx")

इससे कोई फर्क नहीं पड़ता कि आप किस कार्यपुस्तिका में हैं। यह निर्दिष्ट कार्यपुस्तिका को सक्रिय करेगा।

जैसे ही आप कार्यपुस्तिका का चयन करते हैं, यह "सक्रिय कार्यपुस्तिका" बन जाता है

उदाहरण # 2 - कार्यपुस्तिका में मान दर्ज करें

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

सक्रिय कार्यपुस्तिका में, हमें उसके नाम से शीट का चयन करना होगा, अन्यथा हम सक्रिय शीट शब्द का उपयोग करते हैं।

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

कोड:

उप कार्यपुस्तिका_Example1 () कार्यपुस्तिकाएँ ("फ़ाइल 1.xlsx") सक्रिय Activeorkorkbook.ActiveSheet.Range ("A1") को सक्रिय करें। मान = "हैलो" अंत उप।

जब आप F5 कुंजी या मैन्युअल का उपयोग करके इस कोड को चलाते हैं, तो यह कार्यपुस्तिका "फ़ाइल 1.xlsx" में सेल A1 में "हैलो" शब्द सम्मिलित करेगा

हम समान कार्य करने के लिए नीचे दिए गए कोड का भी उपयोग कर सकते हैं।

कोड:

उप कार्यपुस्तिका_Example1 () कार्यपुस्तिका ("फ़ाइल 1.xlsx")। ActiveSheet.Range ("A1")। मान = "नमस्ते" उप उप।

यह "हेलो" शब्द को वर्कबुक "फाइल 1.xlsx" में भी डालेगा।

उदाहरण # 3 - परिवर्तनीय के लिए कार्यपुस्तिका निर्दिष्ट करें

हम घोषित चर के लिए डेटा प्रकार को "कार्यपुस्तिका" के रूप में भी निर्दिष्ट कर सकते हैं। चर को कार्यपुस्तिका के रूप में घोषित करें।

कोड:

उप कार्यपुस्तिका_Example2 ()

कार्यपुस्तिका के रूप में डिम डब्ल्यूबी

अंत उप

अब हमें "सेट" शब्द का उपयोग करके ऑब्जेक्ट चर को वर्कबुक नाम पर सेट करना होगा।

कोड:

उप कार्यपुस्तिका_Example2 () कार्यपुस्तिका सेट के रूप में मंद WB = कार्यपुस्तिकाएँ ("फ़ाइल 1.xlsx") उप

अब से, चर "WB" कार्यपुस्तिका का नाम "फ़ाइल 1.xlsx" रखता है।

चर नाम का उपयोग करके, हम शब्दों को सम्मिलित कर सकते हैं।

कोड:

उप कार्यपुस्तिका_Example2 () कार्यपुस्तिका सेट के रूप में मंद WB = कार्यपुस्तिका ("फ़ाइल 1.xlsx") WB.Worksheets ("Sheet1")। श्रेणी ("A1") = "Hello" WB .orksheets ("Sheet1")। "B1") = "अच्छा" WB.Worksheets ("Sheet1")। रेंज ("C1") = "मॉर्निंग" एंड सब

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

WB.Worksheets ("Sheet1")। रेंज ("A1") = "हैलो"

यहाँ WB वर्कबुक को संदर्भित कर रहा है, उस वर्कबुक में, हम वर्कशीट शीट 1 को वर्कशीट ऑब्जेक्ट का उपयोग करके संदर्भित कर रहे हैं । उस वर्कशीट सेल में, A1 "हैलो" के मान के बराबर है

हम कार्यपुस्तिका को इंडेक्स संख्या के अनुसार भी संदर्भित कर सकते हैं। उदाहरण के लिए, नीचे दिए गए कोड को देखें।

कोड:

Sub Workbook_Example3() Workbooks(1).Activate Workbooks(2).Activate Workbooks(3).Activate End Sub

Here Workbooks (1) means whichever the workbook first on the list, like this similarly Workbooks (2) refers to the second workbook, and Workbooks (3) refers to the third workbook.

The main problem with this index number referencing is we don’t know exactly which workbook activated. It is dangerous to use index numbers.

Example #4 - For Each Loop for Workbook Object

As I told in the beginning, the workbook is a collection object of Workbooks in VBA. Whenever we want to perform the same kind of activity for all the opened workbooks, we need to use For Each loop in VBA.

For Each Loop is the loop for all the objects in VBA. Use the below code to save all the opened workbooks.

Code:

उप Save_All_Workbooks () कार्यपुस्तिका में प्रत्येक WB के लिए कार्यपुस्तिका के रूप में मंद WB.SB अगला BB उप

जब आप इस कोड को F5 कुंजी या मैन्युअल रूप से चलाते हैं, तो एक पॉप-अप आता है, जो वर्कबुक को सेव करने के लिए कहता है। सेव करने के लिए Ok पर क्लिक करें।

आप जिस पर काम कर रहे हैं, उसे छोड़कर सभी वर्कबुक को बंद करने के लिए नीचे दिए गए कोड का उपयोग करें।

कोड:

उप क्लोज़_आल_वर्कबुक () डिम डब्ल्यूबी प्रत्येक वर्कबुक के लिए वर्कबुक में डब्ल्यूबी है।

वर्कबुक बंद करने से पहले एक पॉप-अप विंडो आती है।

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