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

यहां, हमारे पास कुछ सेल्सपर्सन का डेटासेट है। हमारे पास उनका कार्य क्षेत्र और बिक्री उत्पाद हैं। यहां, हम क्षेत्र और उत्पाद कॉलम के लिए एक डेटा सत्यापन सूची बनाने जा रहे हैं।
हमारी डेटा सत्यापन सूची में शामिल होगा:
- क्षेत्र: "North", "South", "East", "West"
- उत्पाद: "TV", "Fridge", "Mobile", "Laptop", "AC"
आप पारंपरिक तरीके से एक सत्यापन सूची बना सकते हैं। लेकिन, यहां हम VBA कोड का उपयोग करेंगे। अब, VBA कोड में, हम उन्हें एक सरणी में डालेंगे। और उस सरणी से, हम अपने डेटा को सत्यापित करेंगे।
निम्नलिखित अनुभाग में, मैं चरण-दर-चरण तरीके से कोड बनाऊंगा। मैं आपको मेरे साथ अपना कोड बनाने की सलाह देता हूं। इस तरह, आप कोड को बेहतर तरीके से सीखेंगे। आइए इसमें शामिल हों।
एक्सेल में सरणी से डेटा सत्यापन सूची बनाने के लिए VBA कोड बनाएं
इस अनुभाग में, आप एक्सेल में VBA कोड का उपयोग करके एक सरणी से अपनी डेटा सत्यापन सूची बनाना सीखेंगे। यहां, हमारा क्षेत्र और उत्पाद कॉलम एक ड्रॉप-डाउन सूची रखेगा।
📌 चरण 1: VBA संपादक खोलें
- सबसे पहले, अपने कीबोर्ड पर Alt+F11 दबाएं VBA संपादक खोलने के लिए।
- फिर, इन्सर्ट>मॉड्यूल चुनें।

📌 चरण 2: सब-प्रक्रिया घोषित करें
अब, निम्न कोड टाइप करें:
Sub data_validation_from_array() End Sub
यह हमारी सबप्रोसीजर है। हम इसके अंदर सभी कोड टाइप करेंगे।
📌 चरण 3: आवश्यक चर घोषित करें
अब उन आवश्यक चरों को घोषित करने का समय है जिनका हमें आगे उपयोग करना होगा।
Sub data_validation_from_array() Dim region, product As Variant Dim region_range, product_range As Range End Sub
हम अपनी सरणियों को Variant के रूप में घोषित कर रहे हैं। इस चर में, हमारे पास कुछ स्ट्रिंग्स होंगे।
region_range, product_range: ये चर हमारे क्षेत्र और उत्पाद कॉलम की रेंज को स्टोर करेंगे।
📌 चरण 4: सरणियाँ सेट करें
Sub data_validation_from_array() Dim region, product As Variant Dim region_range, product_range As Range region = Array("North", "South", "East", "West") product = Array("TV", "Fridge", "Mobile", "Laptop", "AC") End Sub
जैसा कि आप देख सकते हैं, हमने क्षेत्र और उत्पाद चर में कुछ स्ट्रिंग्स संग्रहीत की हैं। हम उनका उपयोग अपनी ड्रॉप-डाउन सूची बनाने के लिए करेंगे।
और पढ़ें: VBA में स्ट्रिंग को सरणी में कैसे विभाजित करें (3 तरीके)
📌 चरण 5: डेटा सत्यापन रेंज सेट करें
Sub data_validation_from_array() Dim region, product As Variant Dim region_range, product_range As Range region = Array("North", "South", "East", "West") product = Array("TV", "Fridge", "Mobile", "Laptop", "AC") Set region_range = Range("C5:C10") Set product_range = Range("D5:D10") End Sub
Set region_range = Range("C5:C10"): कोड की इस पंक्ति से, हम क्षेत्र कॉलम को इंगित कर रहे हैं।

Set product_range = Range("D5:D10"): और कोड की यह पंक्ति उत्पाद कॉलम को निर्दिष्ट कर रही है।

और पढ़ें: एक्सेल VBA में रेंज को सरणी में कैसे बदलें (3 तरीके)
📌 चरण 6: क्षेत्र कॉलम में डेटा सत्यापन सूची बनाएं
Sub data_validation_from_array() Dim region, product As Variant Dim region_range, product_range As Range region = Array("North", "South", "East", "West") product = Array("TV", "Fridge", "Mobile", "Laptop", "AC") Set region_range = Range("C5:C10") Set product_range = Range("D5:D10") With region_range.Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=Join(region, ",") .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "Error" .InputMessage = "" .ErrorMessage = "Please Provide a Valid Input" .ShowInput = True .ShowError = True End With End Sub
With region_range.Validation: इस पंक्ति से हम क्षेत्र कॉलम चुनते हैं।
.Delete: यदि कोई पूर्व-मौजूदा सत्यापन सूची है, तो यह उन्हें हटा देगा।
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=Join(region, ","): यहां हम एक डेटा सत्यापन सूची जोड़ रहे हैं।
- AlertStyle निर्धारित करता है कि यदि उपयोगकर्ता सूची के बाहर कोई प्रविष्टि देता है तो हम किस प्रकार का अलर्ट दिखाने जा रहे हैं।
- Formula1:=Join(region, ","): सूत्र द्वारा, हम सत्यापन सूची में मान प्रदान कर रहे हैं। हमारे पास क्षेत्र में कुछ स्ट्रिंग्स थीं। Join विधि का उपयोग करके, हम उन्हें एक विभाजक अल्पविराम (,) के साथ जोड़ रहे हैं। ये मान या आइटम हमारी सत्यापन सूची में हमारा स्रोत होंगे।
.IgnoreBlank = True: इस पंक्ति से, हम रिक्त मानों की अनुमति दे रहे हैं।
.InCellDropdown = True: हम स्वीकार्य मूल्यों के साथ एक ड्रॉप-डाउन सूची प्रदर्शित करेंगे।
.ErrorTitle = "Error": हम डेटा-सत्यापन त्रुटि संवाद बॉक्स का शीर्षक सेट कर रहे हैं।
.ErrorMessage = "Please Provide a Valid Input": यह डेटा सत्यापन त्रुटि संवाद बॉक्स में एक त्रुटि संदेश सेट करेगा।
.ShowInput = True: जब भी उपयोगकर्ता डेटा सत्यापन रेंज में किसी सेल पर क्लिक करता है तो यह डेटा सत्यापन इनपुट संदेश प्रदर्शित करेगा।
.ShowError = True: यदि उपयोगकर्ता कोई अमान्य इनपुट देता है तो यह त्रुटि संवाद बॉक्स दिखाएगा।
और पढ़ें: एक्सेल में कॉलम से सरणी में अद्वितीय मान प्राप्त करने के लिए VBA (3 मानदंड)
समान पठन
- एक्सेल में सरणी को ट्रांसपोज़ करने के लिए VBA (3 तरीके)
- एक्सेल में टेबल सरणी का नाम कैसे रखें (आसान चरणों के साथ)
- एक्सेल VBA से CSV फ़ाइल को सरणी में पढ़ें (4 आदर्श उदाहरण)
- एक्सेल VBA: सरणी में एकाधिक मानदंडों के साथ फ़िल्टर कैसे करें (7 तरीके)
📌 चरण 7: उत्पाद कॉलम में डेटा सत्यापन सूची बनाएं
Sub data_validation_from_array() Dim region, product As Variant Dim region_range, product_range As Range region = Array("North", "South", "East", "West") product = Array("TV", "Fridge", "Mobile", "Laptop", "AC") Set region_range = Range("C5:C10") Set product_range = Range("D5:D10") With region_range.Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=Join(region, ",") .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "Error" .InputMessage = "" .ErrorMessage = "Please Provide a Valid Input" .ShowInput = True .ShowError = True End With With product_range.Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=Join(product, ",") .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "Error" .InputMessage = "" .ErrorMessage = "Please Provide a Valid Input" .ShowInput = True .ShowError = True End With End Sub
With product_range.Validation: इस पंक्ति से हम उत्पाद कॉलम चुनते हैं।
.Delete: यदि कोई पूर्व-मौजूदा सत्यापन सूची है, तो यह उन्हें हटा देगा।
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=Join(product, ","): हम यहां एक डेटा सत्यापन सूची जोड़ रहे हैं।
- AlertStyle निर्धारित करता है कि यदि उपयोगकर्ता सूची के बाहर कोई प्रविष्टि देता है तो हम किस प्रकार का अलर्ट दिखाने जा रहे हैं।
- Formula1:=Join(region, ","): सूत्र द्वारा, हम सत्यापन सूची में मान प्रदान कर रहे हैं। हमारे पास उत्पाद में कुछ स्ट्रिंग्स थीं। Join विधि का उपयोग करके, हम उन्हें एक विभाजक अल्पविराम (,) के साथ जोड़ रहे हैं। ये मान या आइटम हमारी सत्यापन सूची में हमारा स्रोत होंगे।
.IgnoreBlank = True: इस पंक्ति से, हम रिक्त मानों की अनुमति दे रहे हैं।
.InCellDropdown = True: हम स्वीकार्य मूल्यों के साथ एक ड्रॉप-डाउन सूची प्रदर्शित करेंगे।
.ErrorTitle = "Error": हम डेटा-सत्यापन त्रुटि संवाद बॉक्स का शीर्षक सेट कर रहे हैं।
.ErrorMessage = "Please Provide a Valid Input": यह डेटा सत्यापन त्रुटि संवाद बॉक्स में एक त्रुटि संदेश सेट करेगा।
.ShowInput = True: जब भी उपयोगकर्ता डेटा सत्यापन रेंज में किसी सेल पर क्लिक करता है तो यह डेटा सत्यापन इनपुट संदेश प्रदर्शित करेगा।
.ShowError = True: यदि उपयोगकर्ता कोई अमान्य इनपुट देता है तो यह त्रुटि संवाद बॉक्स दिखाएगा।
VBA कोड चलाएं
हमने अपना VBA कोड पहले ही बना लिया है। अब, यह जांचने का समय है कि कोड ठीक से काम कर रहा है या नहीं। हम इस कोड को अपनी वर्तमान शीट में चलाएंगे।
सबसे पहले, अपने कीबोर्ड पर Alt+F8 दबाएं मैक्रो संवाद बॉक्स खोलने के लिए।

अगला, data_validation_from_array चुनें और चलाएं पर क्लिक करें।
अब, क्षेत्र कॉलम में किसी भी सेल पर क्लिक करें।

यहां आप सेल के बगल में ड्रॉप-डाउन आइकन देख सकते हैं। अब, ड्रॉप-डाउन आइकन पर क्लिक करें।

यहां, आप सत्यापन सूची में सभी मान देख सकते हैं। हमने यह मान अपने क्षेत्र सरणी में दिया था। अब, प्रत्येक सेल के लिए डेटा चुनें।

आइए उत्पाद कॉलम की जांच करें। उत्पाद कॉलम में किसी भी सेल पर क्लिक करें।

हमें यहां भी एक ड्रॉप-डाउन आइकन मिला। अब, ड्रॉप-डाउन पर क्लिक करें।

जैसा कि आप देख सकते हैं, हमारे VBA कोड में उत्पाद सरणी में दिए गए सभी मान यहां दिखाए गए हैं। तो, हमने एक्सेल में VBA कोड का उपयोग करके एक सरणी से सत्यापन सूची सफलतापूर्वक बनाई।
अब, आइए एक मान दें जो हमारी दी गई सरणी में नहीं है। हम उत्पाद "हेडफोन" के साथ कोशिश कर रहे हैं।

अब, एंटर दबाएं। उसके बाद आप निम्न देखेंगे:

जैसा कि आप देख सकते हैं, यह एक त्रुटि संवाद बॉक्स प्रदर्शित कर रहा है। हमने पहले ही अपने VBA कोड में त्रुटि शीर्षक और त्रुटि संदेश सेट किया था और यह ठीक वही दिखा रहा है।
और पढ़ें: एक्सेल में एकाधिक चयन के साथ डेटा सत्यापन ड्रॉप-डाउन सूची बनाएं
💬 याद रखने योग्य बातें
✎ आप डेटा सत्यापन वाले किसी भी सेल को कॉपी कर सकते हैं और इसे अन्य सेल में पेस्ट कर सकते हैं। परिणामी सेल में वही डेटा सत्यापन सूची होगी।
✎ यह एक डायनामिक सरणी नहीं है। यदि आप अपनी डेटा सत्यापन सूची का विस्तार करना चाहते हैं, तो बस उन्हें सरणियों में एक स्ट्रिंग के रूप में जोड़ें। यह ठीक काम करेगा।
निष्कर्ष
निष्कर्ष के तौर पर, मुझे आशा है कि इस ट्यूटोरियल ने आपको एक्सेल में VBA कोड का उपयोग करके डेटा सत्यापन सूची बनाने का उपयोगी ज्ञान प्रदान किया है। हम अनुशंसा करते हैं कि आप इन सभी निर्देशों को अपने डेटासेट पर सीखें और लागू करें। अभ्यास वर्कबुक डाउनलोड करें और इन्हें स्वयं आजमाएं। साथ ही, टिप्पणी अनुभाग में प्रतिक्रिया देने के लिए स्वतंत्र महसूस करें। आपकी बहुमूल्य प्रतिक्रिया हमें ऐसे ट्यूटोरियल बनाने के लिए प्रेरित करती रहती है।
विभिन्न एक्सेल-संबंधी समस्याओं और समाधानों के लिए हमारी वेबसाइट Exceldemy.com देखना न भूलें।
नई विधियां सीखते रहें और बढ़ते रहें!
संबंधित लेख
- एक्सेल में डेटा सत्यापन सूत्र में IF स्टेटमेंट का उपयोग कैसे करें (6 तरीके)
- VBA के साथ एक्सेल में डेटा सत्यापन सूची के लिए नामित रेंज का उपयोग कैसे करें
- एक्सेल VBA में 2D सरणी के लिए ReDim Preserve कैसे करें (2 आसान तरीके)
- एक्सेल VBA: सरणी से डुप्लिकेट हटाएं (2 उदाहरण)
- VBA के साथ सरणी का औसत गणना करें (मैक्रो, UDF, और यूजरफॉर्म)