Introduction to Workbook Object in Excel VBA in Hindi
Makhanlal Chaturvedi University / BCA / VBA programming
Introduction to Workbook Object and Worksheet Access in Excel VBA in Hindi
Introduction to Workbook Object in Hindi
What is a Workbook Object?
Excel VBA में Workbook Object एक बहुत ही महत्वपूर्ण concept है। जब भी हम Excel खोलते हैं, तो जो फ़ाइल खुलती है उसे Workbook कहते हैं। यह Workbook कई Worksheets (जैसे Sheet1, Sheet2 आदि) को contain करता है। VBA में हम Workbook Object का प्रयोग करके पूरे Excel फ़ाइल पर control कर सकते हैं, जैसे Workbook को खोलना, बंद करना, सेव करना, किसी Workbook में sheet जोड़ना या हटाना आदि।
How to Refer a Workbook Object in VBA?
- ThisWorkbook: यह उस Workbook को refer करता है जिसमें हमारा VBA code लिखा गया है।
- ActiveWorkbook: यह वर्तमान में जो Workbook active है उसे refer करता है।
- Workbooks("Name.xlsx"): यह किसी specific नाम की Workbook को refer करता है।
' ThisWorkbook का उदाहरण
MsgBox ThisWorkbook.Name
' ActiveWorkbook का उदाहरण
MsgBox ActiveWorkbook.Name
' Specific Workbook को refer करना
MsgBox Workbooks("SalesData.xlsx").Name
Workbook Object की Properties और Methods
नीचे कुछ commonly use होने वाली Properties और Methods दी गई हैं:
| Property/Method | Explanation (हिंदी में) |
|---|---|
| .Name | Workbook का नाम बताता है |
| .Path | Workbook का file path दिखाता है |
| .Save | Workbook को save करता है |
| .Close | Workbook को बंद करता है |
| .Sheets | सभी sheets को access करने के लिए |
How to Access and Activate a Worksheet Object in Hindi
What is a Worksheet Object?
Worksheet Object Excel की एक-एक Sheet को represent करता है। जैसे Sheet1, Sheet2 आदि। VBA में हम Worksheet Object का प्रयोग करके किसी specific Sheet पर data insert कर सकते हैं, formatting कर सकते हैं या calculation कर सकते हैं।
Worksheet Object को Access कैसे करें?
- Worksheets("SheetName"): किसी specific नाम की sheet को access करता है।
- Sheets(1): sheet की position के आधार पर access करता है।
' By sheet name
Worksheets("Sheet1").Activate
' By index number
Sheets(1).Activate
Activate और Select में क्या अंतर है?
- Activate: किसी sheet को activate करता है लेकिन उसमें cell को select नहीं करता।
- Select: sheet को activate करने के साथ एक या अधिक cells को select करता है।
' केवल sheet को activate करना
Worksheets("Sheet2").Activate
' Sheet को activate और एक range select करना
Worksheets("Sheet2").Activate
Range("A1:B5").Select
Worksheet Object की Properties और Methods
| Property/Method | Explanation (हिंदी में) |
|---|---|
| .Name | Sheet का नाम दिखाता है |
| .Cells | Sheet के सभी cells को represent करता है |
| .Range | Specific range को define करता है |
| .Activate | Sheet को सक्रिय करता है |
| .Visible | Sheet को hide या show करने के लिए |
Difference Between Workbook and Worksheet Object in Hindi
Workbook और Worksheet Object में क्या अंतर है?
Excel VBA में Workbook पूरी Excel फ़ाइल को दर्शाता है जबकि Worksheet उस फाइल के अंदर मौजूद individual Sheets को represent करता है।
| Feature | Workbook Object | Worksheet Object |
|---|---|---|
| Definition | पूरी Excel file | Excel file के अंदर की एक-एक sheet |
| Example | ThisWorkbook, ActiveWorkbook | Worksheets("Sheet1"), Sheets(2) |
| Control | File save, open, close आदि | Cells, Formatting, Data entry आदि |
| Contains | Multiple Worksheets | Rows और Columns |
उदाहरण द्वारा समझना
' Workbook को refer करना
MsgBox ThisWorkbook.Name
' Worksheet को refer करना
MsgBox Worksheets("Sheet1").Name
Using Workbook Events Like Open and Close in Hindi
Workbook Events क्या होते हैं?
Workbook Events वे special actions होते हैं जो तब trigger होते हैं जब कोई specific काम होता है जैसे Workbook खुलना (Open), बंद होना (Close), save होना आदि। इन Events का उपयोग करके हम अपने Excel File को intelligent बना सकते हैं।
Workbook Event कहां लिखें?
Workbook Events को लिखने के लिए आपको "ThisWorkbook" Object के अंदर code लिखना होता है।
Common Workbook Events
- Workbook_Open(): जब भी Workbook खोली जाती है
- Workbook_BeforeClose(): जब भी Workbook बंद की जाती है
- Workbook_SheetChange(): किसी भी sheet में बदलाव होने पर
Workbook_Open का उदाहरण
Private Sub Workbook_Open()
MsgBox "Welcome! यह फाइल अब खुल चुकी है।"
End Sub
Workbook_BeforeClose का उदाहरण
Private Sub Workbook_BeforeClose(Cancel As Boolean)
MsgBox "ध्यान रखें! आप इस फाइल को बंद करने जा रहे हैं।"
End Sub
Workbook_SheetChange का उदाहरण
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
MsgBox "आपने " & Sh.Name & " में बदलाव किया है।"
End Sub
Event को Enable करने के लिए क्या जरूरी है?
- Code "ThisWorkbook" के अंदर होना चाहिए
- Macro Enable होना जरूरी है
- Workbook को Excel Macro-Enabled (.xlsm) format में save करना चाहिए
FAQs
Worksheets("Sheet1").Activate।
Worksheets("SheetName").Activate या Sheets(1).Activate का use करते हैं जिससे वह sheet foreground में आ जाती है।