
सामान्य सूत्र
=COUNT(MATCH(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),allowed&"",0))=LEN(A1)
सारांश
केवल विशिष्ट वर्णों की सूची की अनुमति देने के लिए डेटा सत्यापन का उपयोग करने के लिए, आप COUNT, MATCH, और LEN फ़ंक्शंस के आधार पर एक जटिल जटिल सूत्र सूत्र का उपयोग कर सकते हैं। दिखाए गए उदाहरण में, डेटा सत्यापन इस सूत्र के साथ लागू किया गया है:
=COUNT(MATCH(MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1),allowed&"",0))=LEN(B5)
जहां "अनुमत" का नाम D5: D11 है।
स्पष्टीकरण
अंदर से बाहर काम करना, MID फ़ंक्शन का उपयोग इस स्निपेट के साथ B5 में दर्ज पाठ से एक सरणी उत्पन्न करने के लिए किया जाता है:
MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1)
यहां विस्तार से बताया। परिणाम इस तरह एक सरणी है:
("A";"A";"A";"-";"1";"1";"1")
जो लुकअप वैल्यू के रूप में MATCH में जाता है। लुकअप ऐरे के लिए, हम नामित रेंज "अनुमत" का उपयोग करते हैं, एक खाली स्ट्रिंग ("") के लिए सहमति:
allowed&""
संघनन किसी भी संख्या को स्ट्रिंग्स में परिवर्तित करता है, ताकि हम सेब-से-सेब मिलान कर रहे हैं। परिणाम इस तरह एक सरणी है:
("A";"B";"C";"1";"2";"3";"-")
MATCH में अंतिम तर्क, match_type को सटीक मिलान के लिए शून्य पर सेट किया गया है। क्योंकि हम MATCH को कई लुकअप मान देते हैं, इसलिए हमें कई परिणामों के साथ एक सरणी मिलती है:
(1;1;1;7;4;4;4)
इस सरणी में प्रत्येक संख्या एक मैच का प्रतिनिधित्व करती है। इस घटना में एक चरित्र के लिए एक मैच नहीं मिला है, सरणी में एक # एन / ए त्रुटि होगी।
अंत में, COUNT फ़ंक्शन का उपयोग परिणाम सरणी में संख्याओं को गिनने के लिए किया जाता है, जिसकी तुलना LEN फ़ंक्शन के साथ गणना की गई सेल के सभी वर्णों से की जाती है। जब MATCH सभी वर्णों के लिए एक मैच पाता है, तो मायने रखता है, सूत्र TRUE देता है, और डेटा सत्यापन सफल होता है। यदि MATCH को किसी भी वर्ण से मेल नहीं खाता है, तो यह संख्या के बजाय # N / A देता है। उस स्थिति में, काउंट मेल नहीं खाते और डेटा सत्यापन विफल रहता है।
नोट: यह सूत्र काम पूरा करने के लिए पाशविक बल पर निर्भर है। यदि आपके पास एक बेहतर तरीका है, तो कृपया नीचे एक टिप्पणी छोड़ दें।