एक्सेल में सेल्स, कॉलम्स और पंक्तियों को लॉक करने से आपको अपने डेटा को सुरक्षित करने की स्वतंत्रता मिलती है। वर्कशीट को सुरक्षित करने के बाद, डिफ़ॉल्ट रूप से हर सेल लॉक हो जाता है। इसका मतलब है कि उन्हें संपादित नहीं किया जा सकता। लेकिन अलग-अलग सेल्स को सुरक्षित करने से आपको असुरक्षित सेल्स पर काम करने की स्वतंत्रता मिलती है। यहां आप सेल्स को लॉक और अनलॉक करने के लिए विभिन्न एक्सेल तकनीकें देखेंगे। कई डिफ़ॉल्ट एक्सेल फंक्शंस हैं जिनका उपयोग हम फॉर्मूला बनाने के लिए कर सकते हैं। फिर से, यदि आप वर्कशीट को सुरक्षित नहीं करते तो सेल्स को लॉक करने का कोई प्रभाव नहीं पड़ेगा। यह लेख आपको 6 आदर्श उदाहरण दिखाएगा एक्सेल में VBA का उपयोग करके सेल्स को लॉक और अनलॉक करना।
स्वयं अभ्यास करने के लिए निम्न वर्कबुक डाउनलोड करें।
VBA का उपयोग करके एक्सेल में सेल्स को लॉक और अनलॉक करने के 6 आदर्श उदाहरण
एक्सेल VBA कई जटिल कार्यों को बहुत आसानी से कर सकता है। आपको बस एक कोड इनपुट करना होगा या लिखना होगा। इस लेख में हम एक्सेल में सेल्स को लॉक और अनलॉक करने के लिए VBA लागू करेंगे। वर्णन करने के लिए हम एक नमूना डेटासेट का उपयोग करेंगे। उदाहरण के लिए निम्न डेटासेट में सेल रेंज B4:D10 में सेल्समैन, उत्पाद और नेट बिक्री शामिल हैं। यहां हम अलग-अलग सेल रेंज को लॉक करेंगे।

1. VBA के साथ एक्सेल वर्कशीट के सभी सेल्स को लॉक करना
हमारे पहले उदाहरण में आप देखेंगे कि एक्सेल वर्कशीट के सभी सेल्स को कैसे लॉक किया जाए। इसलिए कार्य करने के लिए नीचे दिए गए चरणों का पालन करें।
चरण:
- सबसे पहले Developer ➤ Visual Basic पर जाएं।

- परिणामस्वरूप VBA विंडो खुल जाएगी।
- अब Insert ➤ Module चुनें।

- नतीजतन Module डायलॉग बॉक्स दिखाई देगा।
- अगला, नीचे दिया गया कोड कॉपी करके Module बॉक्स में पेस्ट करें।
Sub AllCells() Sheets("All Cells").Cells.Locked = True Sheets("All Cells").Protect End Sub

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

2. विशिष्ट सेल्स को लॉक करने के लिए एक्सेल VBA लागू करना
अब हम विशिष्ट सेल्स को लॉक करने का कोड दिखाएंगे। हम एक चेक बॉक्स भी डालेंगे जो लॉकिंग और अनलॉकिंग को नियंत्रित करेगा। ऑपरेशन करने के लिए निम्न चरण सीखें।
चरण:
- सबसे पहले सेल रेंज B4:D10 को Table1 नाम दें।

- अगला Developer ➤ Insert ➤ Check Box पर क्लिक करें।

- इसके बाद चेक बॉक्स को जहां चाहें वहां रखें।
- फिर शीट नाम पर राइट-क्लिक करें।
- कॉन्टेक्स्ट मेनू से View Code चुनें।

- पॉप-आउट डायलॉग बॉक्स में नीचे दिया गया कोड इनपुट करें।
Private Sub CheckBox1_Click() Range("Table1").Select On Error Resume Next If CheckBox1.Value = True Then Selection.Locked = False MsgBox Selection.Address & " Cell Range is Unlocked", vbInformation, "ExcelDemy" Else Selection.Locked = True MsgBox Selection.Address & " Cell Range is Locked", vbInformation, "ExcelDemy" End If End Sub

- फाइल सेव करें और F5 key दबाकर कोड चलाएं।
- इस प्रकार बॉक्स चेक करने से सेल्स अनलॉक हो जाएंगे और नीचे दिखाए अनुसार डायलॉग बॉक्स लौटाएंगे।

- इसी तरह बॉक्स अनचेक करने से सेल्स लॉक हो जाएंगे।

3. VBA का उपयोग करके केवल फॉर्मूला वाले सेल्स को लॉक करना
हालांकि हम केवल उन सेल्स को लॉक कर सकते हैं जहां फॉर्मूला है। इसलिए फॉर्मूला वाले सेल्स को लॉक करने के लिए प्रक्रिया का पालन करें।
चरण:
- पहले उदाहरण 1 में चरणों का पालन करके Module बॉक्स प्राप्त करें।
- बॉक्स में नीचे दिया गया कोड टाइप करें।
Sub LockCellsWithFormulas() For Each Rng In ActiveSheet.Range("B5:D10") If Rng.HasFormula Then Rng.Locked = True Else Rng.Locked = False End If Next Rng ActiveSheet.Protect "111" End Sub

- उसके बाद कोड चलाने के लिए RunSub बटन पर क्लिक करें।
- यहां हम देख सकते हैं कि यह कोड उन सेल्स को लॉक कर देगा जहां हमने फॉर्मूला इनपुट किया है।
- उदाहरण के लिए D7 में फॉर्मूला है। इसलिए हम इस सेल को संपादित नहीं कर सकते।

4. कुछ सेल्स को छोड़कर संपूर्ण वर्कशीट लॉक करना
इसके अलावा हम पूरी वर्कशीट को कुछ सेल्स को छोड़कर लॉक कर सकते हैं जिन्हें हम निर्दिष्ट करेंगे। नीचे दिए गए कोड को देखें जहां B5:D10 वह रेंज है जिसे हम अनलॉक रखना चाहते हैं। इस रेंज के अलावा कोड चलाने के बाद पूरी वर्कशीट लॉक हो जाएगी।
Sub WorksheetExceptFewCells() Dim wb As Workbook Set wb = ActiveWorkbook wb.Sheets("Entire Worksheet Except Few").Range("B5:D10").Locked = False wb.Sheets("Entire Worksheet Except Few").Protect passowrd = "111" End Sub

5. एक्सेल में डेटा एंट्री के बाद सेल्स लॉक करना
फिर से वांछित रेंज में डेटा दर्ज करने के बाद सेल्स को लॉक करना आवश्यक है। इस उदाहरण में B4:D10 वह रेंज है जहां हम डेटा इनपुट करेंगे। इसलिए एक्सेल में डेटा एंट्री के बाद सेल्स लॉक करने के लिए नीचे दिए गए चरणों का पालन करें।
चरण:
- सबसे पहले शीट नाम पर राइट-क्लिक करें और View Code चुनें।
- डायलॉग बॉक्स में निम्न कोड इनपुट करें।
Dim rg As Range Dim str As String Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Not Intersect(Range("B4:D10"), Target) Is Nothing Then Set rg = Target.Item(1) str = rg.Value End If End Sub Private Sub Worksheet_Change(ByVal Target As Range) Dim xg As Range On Error Resume Next Set xg = Intersect(Range("B4:D10"), Target) If xg Is Nothing Then Exit Sub Target.Worksheet.Unprotect Password:="111" If xg.Value <> str Then xg.Locked = True Target.Worksheet.Protect Password:="111" End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Range("B4:D10"), Target) Is Nothing Then Set rg = Target.Item(1) str = rg.Value End If End Sub

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

6. VBA का उपयोग करके एक्सेल में सेल्स अनलॉक करना
अब तक हमने सेल्स लॉक करने का तरीका बताया है। अब आप एक्सेल वर्कबुक में सेल्स अनलॉक करने के लिए नीचे दिए गए कोड का उपयोग कर सकते हैं।
Sub UnlockCells() Sheets("Unlock Cells").Cells.Locked = False Sheets("Unlock Cells").Unprotect End Sub

VBA के बिना एक्सेल में सेल्स लॉक और अनलॉक करना
आप VBA का उपयोग किए बिना भी सेल्स को लॉक और अनलॉक कर सकते हैं। हम Format Cells डायलॉग बॉक्स का उपयोग करके सेल्स लॉक/अनलॉक कर सकते हैं। यदि आप सेल्स लॉक करना चाहते हैं तो Locked के लिए बॉक्स चेक करें। इसी तरह सेल्स अनलॉक करने के लिए बॉक्स अनचेक करना होगा। फिर से, यदि आप अपनी वर्कशीट या वर्कबुक को सुरक्षित नहीं करते तो आपके सेल्स लॉक करने का कोई प्रभाव नहीं पड़ेगा।
चरण:
- सबसे पहले अपनी वांछित रेंज चुनें।
- फिर Ctrl और 1 कुंजी एक साथ दबाएं।
- यह Format Cells डायलॉग बॉक्स लौटाएगा।
- Protection टैब के तहत अपनी आवश्यकता के अनुसार Locked बॉक्स चेक/अनचेक करें।

- यदि आपको वर्कशीट सुरक्षित करने की आवश्यकता है तो Review tab पर जाएं।
- वहां Protect ड्रॉप-डाउन से Protect Sheet चुनें।
- इस प्रकार शीट सुरक्षित हो जाएगी।

निष्कर्ष
इस प्रकार आप ऊपर वर्णित उदाहरणों का पालन करके एक्सेल में VBA का उपयोग करके सेल्स को लॉक और अनलॉक करने में सक्षम होंगे। एक्सेल में कुछ सेल्स लॉक करने से आपको अपना डेटा दूसरों से सुरक्षित करने की स्वतंत्रता मिलती है। यह आकस्मिक विलोपन को रोकने में मदद करता है या किसी और को आपके डेटा को बर्बाद करने से रोकता है। इनका उपयोग करते रहें और हमें बताएं यदि आपके पास कार्य करने के अधिक तरीके हैं। ExcelDemy वेबसाइट को फॉलो करें ऐसे और लेखों के लिए। कमेंट सेक्शन में कमेंट, सुझाव या प्रश्न छोड़ना न भूलें यदि आपके पास कोई है।