एक्सेल सूत्र: जटिल कई मानदंडों के साथ फिल्टर -

विषय - सूची

सारांश

कई जटिल मानदंडों के आधार पर डेटा को फ़िल्टर और निकालने के लिए, आप बर्नर लॉजिक का उपयोग करने वाले भावों की श्रृंखला के साथ फिल्टर फ़ंक्शन का उपयोग कर सकते हैं। दिखाए गए उदाहरण में, G5 में सूत्र है:

=FILTER(B5:E16,(LEFT(B5:B16)="x")*(C5:C16="east")*NOT(MONTH(D5:D16)=4))

यह सूत्र डेटा लौटाता है:

खाता "x" से शुरू होता है और क्षेत्र "पूर्व" है, और महीना अप्रैल नहीं है।

स्पष्टीकरण

इस उदाहरण में, हमें तर्क का निर्माण करने की आवश्यकता है जो डेटा को शामिल करने के लिए फ़िल्टर करता है:

खाता "x" से शुरू होता है और क्षेत्र "पूर्व" है, और महीना अप्रैल नहीं है।

इस सूत्र के फ़िल्टरिंग तर्क (शामिल तर्क) डेटा में सरणियों पर बूलियन तर्क का उपयोग करने वाले तीन अभिव्यक्तियों को एक साथ जोड़कर बनाया गया है। यदि खाता "x" से शुरू होता है, तो पहली अभिव्यक्ति LEFT फ़ंक्शन का परीक्षण करती है:

LEFT(B5:B16)="x" // account begins with "x"

परिणाम इस तरह TRUE FALSE मूल्यों की एक सरणी है:

(TRUE;FALSE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;TRUE;TRUE;FALSE;TRUE)

यदि क्षेत्र (=) ऑपरेटर के बराबर है तो दूसरी अभिव्यक्ति परीक्षण "क्षेत्र" है।

C5:C16="east" // region is east

परिणाम एक और सरणी है:

(FALSE;FALSE;TRUE;TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;TRUE)

तीसरी अभिव्यक्ति महीने के अप्रैल नहीं होने पर परीक्षण करने के लिए NOT फ़ंक्शन के साथ MONTH फ़ंक्शन का उपयोग करती है:

NOT(MONTH(D5:D16)=4) // month is not april

कौन सी पैदावार:

(FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE)

ध्यान दें कि NOT फ़ंक्शन परिणाम को MONTH अभिव्यक्ति से उलट देता है।

तीनों सरणियों को एक साथ गुणा किया जाता है। गणित ऑपरेशन 1s और 0s के लिए TRUE और FALSE मूल्यों को बढ़ाता है, इसलिए इस बिंदु पर हम इस तरह शामिल तर्क की कल्पना कर सकते हैं:

(1;0;1;1;1;0;0;0;1;1;0;1)* (0;0;1;1;1;0;1;0;0;1;0;1)* (0;0;0;1;1;1;1;1;1;1;1;1)

बूलियन गुणन तार्किक कार्य और से मेल खाता है, इसलिए अंतिम परिणाम इस तरह एक एकल सरणी है:

(0;0;0;1;1;0;0;0;0;1;0;1)

फ़िल्टर फ़ंक्शन डेटा को फ़िल्टर करने के लिए इस सरणी का उपयोग करता है, और सरणी में 1s के साथ मेल खाने वाली चार पंक्तियों को लौटाता है।

मानदंड बढ़ाना

फ़िल्टर में शामिल तर्क बनाने के लिए उपयोग किए जाने वाले अभिव्यक्तियों को और भी अधिक जटिल फिल्टर को संभालने के लिए आवश्यकतानुसार बढ़ाया जा सकता है। उदाहरण के लिए, डेटा को केवल उन पंक्तियों में शामिल करने के लिए, जहाँ राशि> 10000, आप इस तरह से एक सूत्र का उपयोग कर सकते हैं:

=FILTER(B5:E16,(LEFT(B5:B16)="x")*(C5:C16="east")*NOT(MONTH(D5:D16)=4)*(E5:E16>10000))

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