VBA प्रोटेक्ट शीट - VBA का उपयोग करके पासवर्ड प्रोटेक्ट एक्सेल शीट

एक्सेल वीबीए प्रोटेक्टिंग शीट

हम vba कोड का उपयोग करके एक्सेल शीट की सुरक्षा कर सकते हैं , जो उपयोगकर्ता को वर्कशीट डेटा में कोई भी बदलाव करने की अनुमति नहीं देता है, वे सब कर सकते हैं बस रिपोर्ट को पढ़ना है। इसके लिए, हमारे पास "सुरक्षा" नामक एक अंतर्निहित vba विधि है।

जैसे हम एक्सेल में अपने वर्कशीट की सुरक्षा करते हैं, वैसे ही हम अपने वर्कशीट को सुरक्षित रखने के लिए VBA का उपयोग कर सकते हैं। यह एक .protect स्टेटमेंट का उपयोग करके किया जाता है, शीट की सुरक्षा के लिए दो तरीके हैं एक पासवर्ड के साथ, और दूसरा पासवर्ड के बिना, सिंटैक्स की सुरक्षा के लिए। वर्कशीट निम्नानुसार है वर्कशीट ()। पासवर्ड की सुरक्षा करें।

हम आमतौर पर उपयोगकर्ता या पाठक के साथ अंतिम अंतिम रिपोर्ट साझा करते हैं। जब हम उपयोगकर्ता के साथ अंतिम अंतिम रिपोर्ट साझा करते हैं, तो हम चाहते हैं कि उपयोगकर्ता कोई संशोधन नहीं करेगा या अंतिम रिपोर्ट में हेरफेर नहीं करेगा। ऐसे परिदृश्य में, यह विश्वास के बारे में है, है ना?

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

सुरक्षा पत्रक में आपूर्ति करने के लिए विभिन्न पैरामीटर शामिल हैं। यह शीट को असुरक्षित करने के विपरीत है। आइए पासवर्ड के साथ प्रोटेक्ट विधि के सिंटैक्स को देखें।

वाह क्या बात है!!! वाक्य-विन्यास को देखकर भयभीत न हों। नीचे दिए गए प्रत्येक तर्क की व्याख्या पर एक नज़र डालें।

  • वर्कशीट का नाम: सबसे पहले, हमें यह उल्लेख करना होगा कि हम किस वर्कशीट की सुरक्षा करने जा रहे हैं।
  • पासवर्ड: हमें उस पासवर्ड को दर्ज करने की आवश्यकता है जिसे हम सुरक्षा के लिए उपयोग कर रहे हैं। यदि हम इस पैरामीटर को अनदेखा करते हैं, तो एक्सेल एक पासवर्ड के बिना शीट को लॉक कर देगा, और शीट को असुरक्षित करते समय, यह किसी भी पासवर्ड के लिए पूछे बिना असुरक्षित होगा।
  • नोट: आप जो पासवर्ड दे रहे हैं, उसे याद रखें, क्योंकि अगर आप भूल गए हैं, तो आपको विभिन्न कठिन रास्तों से गुजरना होगा।
  • आरेखण वस्तु: यदि आप कार्यपत्रक में वस्तुओं की सुरक्षा करना चाहते हैं, तो आप तर्क को TRUE के रूप में पारित कर सकते हैं या FALSE कर सकते हैं। डिफ़ॉल्ट मान सत्य है।
  • सामग्री: कार्यपत्रक की सामग्री की सुरक्षा के लिए, पैरामीटर को TRUE के रूप में सेट करें या FALSE करें। मूल मूल्य गलत है। यह केवल बंद कोशिकाओं की रक्षा करेगा। डिफ़ॉल्ट मान सत्य है।
  • परिदृश्य: यदि एक्सेल परिदृश्यों में कोई भी-यदि विश्लेषण है, तो हम उनकी भी रक्षा कर सकते हैं। TRUE को सुरक्षित रखने के लिए अन्यथा FALSE करें। डिफ़ॉल्ट मान सत्य है।
  • केवल उपयोगकर्ता इंटरफ़ेस: यदि आप मैक्रो के अलावा उपयोगकर्ता इंटरफ़ेस की सुरक्षा करना चाहते हैं, तो यह TRUE होना चाहिए। यदि यह तर्क छोड़ दिया जाता है, तो यह मैक्रोज़ और उपयोगकर्ता इंटरफ़ेस दोनों की सुरक्षा करेगा। यदि आप तर्क को TRUE पर सेट करते हैं, तो यह केवल उपयोगकर्ता इंटरफ़ेस की सुरक्षा करेगा। मूल मूल्य गलत है।
  • फ़ॉर्मेटिंग सेल की अनुमति दें: यदि आप उपयोगकर्ता को सेल को फॉर्मेट करने की अनुमति देना चाहते हैं, तो आप पैरामीटर को TRUE या फ़ाल्स सेट कर सकते हैं। मूल मूल्य गलत है।
  • फ़ॉर्मेटिंग कॉलम की अनुमति दें: यदि आप उपयोगकर्ता को संरक्षित शीट में किसी भी कॉलम को प्रारूपित करने की अनुमति देना चाहते हैं, तो आप पैरामीटर को TRUE या अन्यथा FALSE पर सेट कर सकते हैं। मूल मूल्य गलत है।
  • फ़ॉर्मेटिंग पंक्तियों को अनुमति दें: यदि आप उपयोगकर्ता को संरक्षित शीट में किसी भी पंक्ति को प्रारूपित करने की अनुमति देना चाहते हैं, तो आप पैरामीटर को TRUE या अन्यथा FALSE पर सेट कर सकते हैं। मूल मूल्य गलत है।
  • VBA में कॉलम सम्मिलित करने की अनुमति दें : आप उपयोगकर्ता को नए कॉलम सम्मिलित करने की अनुमति देना चाहते हैं, तो आपको इसे TRUE पर सेट करने की आवश्यकता है। मूल मूल्य गलत है।
  • आवेषण पंक्तियों को अनुमति दें: यदि आप उपयोगकर्ता को नई पंक्तियों को सम्मिलित करने की अनुमति देना चाहते हैं, तो आपको इसे TRUE पर सेट करने की आवश्यकता है। मूल मूल्य गलत है।
  • हाइपरलिंक सम्मिलित करने की अनुमति दें: यदि आप उपयोगकर्ता को हाइपरलिंक सम्मिलित करने की अनुमति देना चाहते हैं, तो आपको इसे TRUE पर सेट करना होगा। मूल मूल्य गलत है।
  • कॉलम हटाने की अनुमति दें: यदि आप उपयोगकर्ता को VBA में कॉलम हटाने की अनुमति देना चाहते हैं, तो आपको इसे TRUE पर सेट करना होगा। मूल मूल्य गलत है।
  • पंक्तियों को हटाने की अनुमति दें: यदि आप उपयोगकर्ता को पंक्तियों को हटाने की अनुमति देना चाहते हैं, तो आपको इसे TRUE पर सेट करने की आवश्यकता है। मूल मूल्य गलत है।
  • सॉर्टिंग की अनुमति दें: यदि आप उपयोगकर्ता को डेटा को सॉर्ट करने की अनुमति देना चाहते हैं, तो आपको इसे TRUE पर सेट करना होगा। मूल मूल्य गलत है।
  • फ़िल्टरिंग की अनुमति दें: यदि आप उपयोगकर्ता को डेटा को फ़िल्टर करने की अनुमति देना चाहते हैं, तो आपको इसे TRUE पर सेट करने की आवश्यकता है। मूल मूल्य गलत है।
  • पिवट टेबल का उपयोग करने की अनुमति दें: यदि आप उपयोगकर्ता को पिवट टेबल का उपयोग करने की अनुमति देना चाहते हैं, तो आपको इसे TRUE पर सेट करने की आवश्यकता है। मूल मूल्य गलत है।

VBA कोड का उपयोग करके शीट की सुरक्षा कैसे करें?

चरण 1: शीट का चयन करें जिसे संरक्षित करने की आवश्यकता है

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

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

चरण 2: वर्कशीट को परिभाषित करें

वर्कशीट के नाम का उल्लेख करने के बाद, एक डॉट डालें, लेकिन हमें काम करने के लिए कोई इंटेलीसेनस सूची नहीं दिखती है। इससे काम मुश्किल हो जाता है। IntelliSense सूची तक पहुंचने के लिए, चर को एक वर्कशीट के रूप में परिभाषित करता है।

कोड:

सब प्रोटेक्ट_एक्सप्लिमेंट 1 () डिम डब्ल्यूएस एज़ वर्कशीट एंड सब

चरण 3: कार्यपत्रक संदर्भ दें

अब वर्कशीट को वर्कशीट ("मास्टर शीट") के रूप में कार्यपत्रक संदर्भ में सेट करें ।

कोड:

सब प्रोटेक्ट_Example1 () डिम Ws के रूप में कार्यपत्रक सेट Ws = कार्यपत्रक ("मास्टर शीट") समाप्ति उप

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

चरण 4: सुरक्षा पद्धति का चयन करें

IntelliSense सूची से "सुरक्षा" विधि का चयन करें।

चरण 5: पासवर्ड दर्ज करें

डबल-कोट्स में पासवर्ड निर्दिष्ट करें।

कोड:

सब प्रोटेक्ट_Example1 () डिम Ws के रूप में कार्यपत्रक सेट Ws = कार्यपत्रक ("मास्टर शीट") Ws.Protect पासवर्ड: = "MyPassword" अंतिम उप

चरण 6: कोड चलाएँ

कोड को मैन्युअल रूप से चलाएं या फिर शॉर्टकट कुंजी F5 का उपयोग करके, यह "मास्टर शीट" नाम की शीट की रक्षा करेगा

जब शीट को संरक्षित किया जाता है, अगर हम कोई संशोधन करना चाहते हैं, तो यह कुछ त्रुटि संदेश दिखाता है, जैसा कि नीचे दिखाया गया है।

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

उप-सुरक्षा_Example2 () सक्रिय Workbook.Worksheets Ws.Protect पासवर्ड में प्रत्येक Ws के लिए कार्य के रूप में डिम Ws

नोट: प्रयोग करने के लिए अन्य मापदंडों का उपयोग करें।

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