सामग्री सारणी
सानुकूल RegexMatch फंक्शनच्या मदतीने एक्सेलमध्ये डेटा प्रमाणीकरण कसे करावे हे ट्यूटोरियल दाखवते.
जेव्हा एक्सेल वर्कशीट्समध्ये वापरकर्त्याच्या इनपुटवर मर्यादा घालण्याचा प्रश्न येतो, तेव्हा डेटा प्रमाणीकरण अपरिहार्य आहे. दिलेल्या सेलमध्ये फक्त संख्या किंवा तारखांना परवानगी देऊ इच्छिता? किंवा मजकूर मूल्ये एका विशिष्ट लांबीवर मर्यादित करायची? किंवा कदाचित दिलेल्या श्रेणीबाहेरील वेळा नाकारू? काही हरकत नाही, हे सर्व प्रीसेट किंवा सानुकूल प्रमाणीकरण निकषांसह सहज करता येते. पण मला फक्त वैध ईमेल पत्ते किंवा विशिष्ट पॅटर्नशी जुळणाऱ्या स्ट्रिंगला परवानगी द्यायची असेल तर? अरेरे, हे शक्य नाही. Regex तुम्ही म्हणता? हम्म... ते कार्य करेल!
रेजेक्ससह एक्सेल डेटा प्रमाणीकरण कसे करावे
खेदाची गोष्ट म्हणजे, एक्सेलमधील कोणतीही अंगभूत वैशिष्ट्ये regex ला समर्थन देत नाहीत आणि डेटा प्रमाणीकरण नाही अपवाद रेग्युलर एक्स्प्रेशन वापरून सेल इनपुट प्रमाणित करण्यात सक्षम होण्यासाठी, तुम्हाला प्रथम कस्टम Regex फंक्शन तयार करणे आवश्यक आहे. आणखी एक गुंतागुंत अशी आहे की VBA वापरकर्ता-परिभाषित कार्ये थेट डेटा प्रमाणीकरणासाठी दिली जाऊ शकत नाहीत - आपल्याला नामित सूत्राच्या रूपात मध्यस्थाची आवश्यकता असेल.
वरील गोष्टींचा विचार करून, आपण घ्यायच्या चरणांची थोडक्यात रूपरेषा देऊ. regexes वापरून Excel मध्ये डेटा प्रमाणित करण्यासाठी:
- एक सानुकूल Regex फंक्शन तयार करा जे इनपुट मूल्य नियमित अभिव्यक्तीशी जुळते की नाही हे तपासते.
- तुमच्या Regex सूत्रासाठी नाव परिभाषित करा.
- नामांकित सूत्रावर आधारित डेटा प्रमाणीकरण नियम कॉन्फिगर करा.
- कॉपी करातुम्हाला पाहिजे तितक्या सेलसाठी प्रमाणीकरण सेटिंग्ज.
प्लॅनसारखे वाटते? चला ते व्यवहारात अंमलात आणण्याचा प्रयत्न करूया!
सानुकूल रेग्युलर एक्स्प्रेशन वापरून एक्सेल डेटा प्रमाणीकरण
हे उदाहरण अगदी सामान्य प्रकरणाला संबोधित करते - केवळ विशिष्ट पॅटर्नच्या मूल्यांना परवानगी कशी द्यावी.
समजा तुम्ही तुमच्या वर्कशीटमध्ये काही SKU कोड ठेवले आहेत आणि दिलेल्या पॅटर्नशी जुळणारे कोडच यादीत येतील याची खात्री करून घ्यायची आहे. प्रत्येक SKU मध्ये हायफनने विभक्त केलेल्या वर्णांचे 2 गट असतात, पहिल्या गटात 3 कॅपिटल अक्षरे आणि दुसरा गट - 3 अंक असतात, तुम्ही खालील रेगेक्स वापरून अशी मूल्ये ओळखू शकता.
पॅटर्न : ^[A-Z]{3}-\d{3}$
कृपया लक्षात घ्या की स्ट्रिंगचा प्रारंभ (^) आणि शेवट ($) अँकर केलेला आहे, त्यामुळे याशिवाय इतर कोणतेही वर्ण नाहीत नमुना सेलमध्ये एंटर केला जाऊ शकतो.
1. सानुकूल Regex मॅच फंक्शन जोडा
तुमच्या वर्कबुकमध्ये RegExpMatch फंक्शन टाकून सुरुवात करा. कोड आमच्या एक्सेल गुरूंनी आधीच लिहिलेला आहे, त्यामुळे तुम्हाला फक्त वरील लिंक केलेल्या पेजवरून कॉपी करून तुमच्या VBA एडिटरमध्ये पेस्ट करणे आवश्यक आहे.
तुमच्या संदर्भासाठी फंक्शनचे वाक्यरचना येथे आहे:
RegExpMatch(मजकूर , नमुना, [match_case])कुठे:
- मजकूर (आवश्यक) - एक स्रोत स्ट्रिंग (आमच्या संदर्भात - एक प्रमाणित सेल). <9 नमुना (आवश्यक) - जुळण्यासाठी नियमित अभिव्यक्ती.
- Match_case (वैकल्पिक) - जुळणी प्रकार. खरे किंवा वगळलेले - केस-संवेदनशील असत्य - केस-संवेदनशील.
टीप. तुम्ही आमच्या अल्टीमेट सूटचे वापरकर्ता असल्यास, तुम्ही तुमच्या वर्कबुकमध्ये कोणताही VBA कोड न जोडता Excel मध्ये Regex डेटा प्रमाणीकरण करू शकता. आमच्या Regex टूल्समध्ये समाविष्ट असलेल्या सानुकूल AblebitsRegexMatch फंक्शनचा फायदा घ्या.
2. नामित फॉर्म्युला तयार करा
तुमच्या लक्ष्य वर्कशीटमध्ये, सेल A1 निवडा (त्यातील मजकूर विचारात न घेता आणि तुम्ही प्रत्यक्षात कोणता सेल सत्यापित करणार आहात हे महत्त्वाचे नाही), नाव व्यवस्थापक उघडण्यासाठी Ctrl + F3 दाबा आणि नाव परिभाषित करा. या सूत्रासाठी:
=RegExpMatch(Sheet1!A1, "^[A-Z]{3}-\d{3}$")
किंवा तुम्ही काही सेलमध्ये regex टाकू शकता (या उदाहरणातील A2) आणि दुसऱ्या वितर्कला $A$2 देऊ शकता:
=RegExpMatch(Sheet1!A1, Sheet1!$A$2)
सूत्र योग्यरित्या कार्य करण्यासाठी, मजकूर युक्तिवाद (A1) साठी सापेक्ष संदर्भ आणि पॅटर्न ($A$2) साठी परिपूर्ण संदर्भ वापरण्याची खात्री करा.
आमचा फॉर्म्युला SKU क्रमांक प्रमाणित करण्यासाठी आहे हे लक्षात घेता, आम्ही त्यास त्यानुसार नाव देतो: Validate_SKU .
महत्त्वाची सूचना! सूत्र परिभाषित करताना, कृपया पुन्हा तपासा की पहिला युक्तिवाद सध्या निवडलेल्या सेलचा संदर्भ देतो , अन्यथा सूत्र कार्य करणार नाही. उदाहरणार्थ, शीटवर सेल A1 निवडल्यास, पहिल्या युक्तिवादात A1 ठेवा (आमच्या शिफारसींनुसार); जर B2 निवडला असेल, तर पहिल्या युक्तिवादासाठी B2 वापरा आणि एक. जोपर्यंत तुम्ही सध्या निवडलेल्या सेलशी जुळत असेल तोपर्यंत तुम्ही कोणता विशिष्ट संदर्भ वापरता याने काही फरक पडत नाही.
चरण-दर-चरणासाठीसूचना, कृपया Excel मध्ये नामित फॉर्म्युला कसा बनवायचा ते पहा.
3. डेटा प्रमाणीकरण सेट करा
तपासला जाणारा पहिला सेल निवडा (आमच्या बाबतीत A5) आणि नामित सूत्रावर आधारित सानुकूल डेटा प्रमाणीकरण नियम बनवा. यासाठी, पुढील गोष्टी करा:
- डेटा टॅबवर क्लिक करा > डेटा प्रमाणीकरण .
- अनुमती द्या<2 मध्ये> ड्रॉप-डाउन सूची, सानुकूल निवडा.
- संबंधित बॉक्समध्ये खालील सूत्र प्रविष्ट करा.
=Validate_SKU
- रिक्त दुर्लक्ष करा पर्यायाची निवड रद्द करा, अन्यथा तुमचा नियम कार्य करणार नाही.
पर्यायी, तुम्ही टाइप करू शकता सेलमध्ये अवैध डेटा एंटर केल्यावर प्रदर्शित करण्यासाठी कस्टम एरर मेसेज.
तुम्हाला तपशीलवार पायऱ्या आवश्यक आहेत असे वाटत असल्यास, तुम्ही येथे जा: Excel मध्ये सानुकूल डेटा प्रमाणीकरण कसे सेट करावे.
4. अधिक सेलमध्ये डेटा प्रमाणीकरण कॉपी करा
अधिक सेलमध्ये प्रमाणीकरण सेटिंग्ज कॉपी करण्यासाठी, तुम्हाला हे करणे आवश्यक आहे:
- डेटा प्रमाणीकरणासह सेल निवडा आणि यासाठी Ctrl + C दाबा ते कॉपी करा.
- तुम्हाला प्रमाणित करायचे असलेले इतर सेल निवडा, त्यांच्यावर उजवे-क्लिक करा, स्पेशल पेस्ट करा वर क्लिक करा आणि प्रमाणीकरण पर्याय निवडा.
- ठीक आहे क्लिक करा.
डेटा प्रमाणीकरण कसे कॉपी करायचे यामध्ये अधिक माहिती मिळू शकते.
आता, प्रत्येक वेळी जेव्हा कोणीतरी प्रमाणित सेलमध्ये अवैध SKU एंटर करण्याचा प्रयत्न करतो, तेव्हा खालील चेतावणी संदेश दिसेल:
Regex सह ईमेल सत्यापन
ईमेल प्रमाणीकरण करण्यासाठी, आपण प्रारंभ कराईमेल पत्त्याशी जुळणारी नियमित अभिव्यक्ती लिहून.
पॅटर्न : ^[\w\.\-]+@[A-Za-z0-9]+[A-Za -z0-9\.\-]*[A-Za-z0-9]+\.[A-Za-z]{2,24}$
वाक्यरचनाच्या तपशीलवार स्पष्टीकरणासाठी, कृपया वैध ईमेल पत्ते जुळण्यासाठी Regex पहा.
आणि आता, आधीच परिचित पायऱ्या पार पाडून प्रमाणीकरण निकष निर्दिष्ट करा:
- वरील regex B2 मध्ये प्रविष्ट करा.
- सेल A1 निवडा आणि Validate_Email नावाचे नाव परिभाषित करा ज्याचा संदर्भ असेल:
=RegExpMatch(Sheet1!A1, Sheet1!$B$2)
- सेल B5 साठी, खालील सूत्र वापरून सानुकूल डेटा प्रमाणीकरण लागू करा. हे आवश्यक आहे की रिक्त दुर्लक्ष करा पर्याय निवडलेला नसावा.
=Validate_Email
याव्यतिरिक्त, तुम्ही वापरकर्त्याला वैध ईमेल अॅड्रेस एंटर करण्यास सांगणारा कस्टम एरर मेसेज कॉन्फिगर करू शकता.
- खालील सेलमध्ये नियम कॉपी करा.
जर तुम्ही प्रमाणित सेलमध्ये एंटर केलेला ईमेल अॅड्रेस regex पॅटर्नशी जुळत नसेल, तर खालील सूचना येईल पॉप अप:
रेग्युलर एक्सप्रेशन वापरून पासवर्ड प्रमाणित करणे
पासवर्ड व्हॅलिडेशनसाठी regex वापरताना, तुमची रेग्युलर एक्सप्रेशन नेमकी काय तपासावी हे ठरविण्याची पहिली गोष्ट आहे. ही काही उदाहरणे आहेत जी तुम्हाला योग्य मार्गावर ठेवू शकतात.
पासवर्ड कमीत कमी ६ वर्णांचा असावा आणि त्यात फक्त अक्षरे (अपरकेस किंवा लोअरकेस) आणि अंक असू शकतात:
पॅटर्न : ^[A-Za-z0-9]{6,}$
पासवर्ड कमीत कमी ६ वर्णांचा असावा आणि त्यात किमान एक अक्षर आणिएक अंक:
पॅटर्न : ^(?=.*[A-Za-z])(?=.*\d)[A-Za-z\d]{6 . .*[A-Z])(?=.*[a-z])(?=.*\d)[A-Za-z\d]{6,}$
एक पासवर्ड किमान 6 वर्णांचा असणे आवश्यक आहे लांब आणि किमान एक अक्षर, एक अंक आणि एक विशेष वर्ण समाविष्ट करा:
पॅटर्न : ^(?=.*[A-Za-z])(?=.*\d )(?=.*[@$!%*#?&_-])[A-Za-z\d@$!%*#?&_-]{6,}$
पॅटर्न स्थापित केल्यामुळे, तुम्ही डेटा प्रमाणीकरण सेट करण्यासाठी पुढे जाऊ शकता:
- C2 मध्ये तुमचा पासवर्ड regex प्रविष्ट करा.
- सेल A1 निवडा आणि नावाचा एक नामांकित सूत्र तयार करा. Validate_Password :
=RegExpMatch(Sheet1!A1, Sheet1!$C$2)
- सेल C5 साठी, खालील सूत्रासह सानुकूल प्रमाणीकरण नियम तयार करा. रिक्त दुर्लक्ष करा चेक बॉक्सची निवड रद्द करण्याचे लक्षात ठेवा.
=Validate_Password
- तुम्हाला पाहिजे तितक्या सेलमध्ये नियम कॉपी करा.
आता, तुम्ही सूचीमध्ये सुरक्षितपणे नवीन पासवर्ड जोडू शकता. इनपुट स्ट्रिंग regex शी जुळत नसल्यास, खालील सूचना तुम्हाला कोणत्या प्रकारची मूल्ये स्वीकारली जातात याची आठवण करून देईल:
Regex डेटा प्रमाणीकरण काम करत नसेल
जर तुमच्या Excel मध्ये Regex डेटा प्रमाणीकरण कार्य करत नसेल , बहुधा हे खालीलपैकी एका कारणामुळे असावे.
RegExpMatch फंक्शन गहाळ आहे
डेटा प्रमाणीकरण लागू करण्यापूर्वी, तुमच्या वर्कबुकमध्ये RegExpMatch फंक्शनचा कोड टाकण्याची खात्री करा.
चुकीचे नियमितअभिव्यक्ती
तुमचे regex अपेक्षेप्रमाणे कार्य करत असल्याची खात्री करण्यासाठी, तुम्ही काही सेलमध्ये RegExpMatch सूत्र प्रविष्ट करू शकता आणि परिणाम तपासू शकता. अधिक माहितीसाठी, कृपया उदाहरणांसह जुळणारे एक्सेल रेग्युलर एक्सप्रेशन पहा.
तुमच्या रेग्युलर एक्स्प्रेशनचे विश्लेषण आणि डीबग करण्यासाठी, तुम्ही RegEx101 किंवा RegExr सारख्या मोफत ऑनलाइन regex चाचणी सेवा वापरू शकता.
चुकीचे नाव दिलेले सूत्र
डेटा प्रमाणीकरण अयशस्वी होण्याचे एक सामान्य कारण म्हणजे चुकीच्या सेलचा संदर्भ देणारे रेगेक्स नावाचे सूत्र आहे. सर्व उदाहरणांमध्ये, आम्ही A1 चा संदर्भ देणारे सूत्र परिभाषित करण्याची शिफारस केली आहे:
=RegExpMatch(A1, regex)
हे तेव्हाच कार्य करते जेव्हा सेल A1 सक्रिय असेल नाव आणि <15 परिभाषित करताना>सापेक्ष संदर्भ ($ चिन्हाशिवाय) वापरला जातो.
कल्पना अशी आहे की सूत्र (A1) मध्ये निर्दिष्ट केलेला सापेक्ष संदर्भ प्रमाणित सेलच्या सापेक्ष स्थितीवर आधारित आपोआप बदलेल. दुसऱ्या शब्दांत, सेल A1 फक्त सोयीसाठी आणि सुसंगततेसाठी निवडला जातो. खरं तर, तुम्ही सेल B1 निवडू शकता आणि B1 चा संदर्भ घेऊ शकता, सेल C1 निवडू शकता आणि C1 चा संदर्भ घेऊ शकता, इत्यादी. मुख्य गोष्ट म्हणजे संदर्भित सेल हा सक्रिय सेल असावा.
तुमचे नाव दिलेले सूत्र बरोबर आहे की नाही हे तपासण्यासाठी, तुमच्या वर्कशीटमधील कोणताही सेल निवडा, उघडा. नाव व्यवस्थापक, आणि सूत्र कोणत्या सेलकडे निर्देश करते ते पहा. तो सध्या निवडलेल्या सेलचा संदर्भ देत असल्यास, सूत्र योग्य आहे. अन्यथा, तुम्ही पहिल्या युक्तिवादातील संदर्भ बदलला पाहिजे.
स्क्रीनशॉटमध्येखाली, सेल A7 निवडला आहे, याचा अर्थ पहिल्या युक्तिवादात नामित सूत्रामध्ये A7 असणे आवश्यक आहे. दुसरा युक्तिवाद ($A$2) regex चा संदर्भ देतो - हा संदर्भ स्थिर राहणे अपेक्षित आहे, म्हणून ते $ चिन्हाने लॉक केले आहे.
निवडलेला रिक्त पर्याय दुर्लक्षित करा
सानुकूल डेटा प्रमाणीकरण नियम सेट करताना, रिक्त दुर्लक्ष करा चेक बॉक्सची निवड रद्द करणे महत्वाचे आहे. अन्यथा, नियम खालील कारणामुळे कार्य करणार नाही:
सामना आढळली नाही तर, RegExpMatch फंक्शन FALSE मिळवते. रिक्त दुर्लक्ष करा पर्याय निवडल्यास, असत्य हे रिक्त बरोबर आहे आणि त्याकडे दुर्लक्ष केले जाते.
एक पर्यायी उपाय हे स्पष्टपणे सांगत आहे की सूत्राने खरे दिले पाहिजे:
=RegExpMatch(…)=TRUE
रेग्युलर एक्स्प्रेशन वापरून एक्सेलमध्ये डेटा व्हॅलिडेशन कसे करावे. वाचल्याबद्दल मी तुमचा आभारी आहे आणि पुढील आठवड्यात तुम्हाला आमच्या ब्लॉगवर भेटण्यास उत्सुक आहे!
डाउनलोड करण्यासाठी सराव वर्कबुक
Regex डेटा प्रमाणीकरण उदाहरणे (.xlsm फाइल)
<3