
सामान्य सूत्र
=XLOOKUP(max,dates,results,,-1) // latest match by date
सारांश
तिथि के अनुसार डेटा के एक सेट में नवीनतम मैच प्राप्त करने के लिए, आप match_mode से -1 सेट करके लगभग मैच मोड में XLOOKUP का उपयोग कर सकते हैं। दिखाए गए उदाहरण में, G5 में सूत्र, नीचे कॉपी किया गया है:
=XLOOKUP(MAX(date),(item=F5)*date,price,,-1)
जहाँ दिनांक (C5: C15), आइटम (B5: B15) और मूल्य (D5: D15) को श्रेणी कहा जाता है।
स्पष्टीकरण
XLOOKUP कई सुविधाएँ प्रदान करता है जो इसे अधिक जटिल लुकअप के लिए असाधारण रूप से अच्छा बनाती हैं। इस उदाहरण में, हम किसी आइटम के लिए नवीनतम कीमत चाहते हैं। यदि डेटा को क्रम से बढ़ते क्रम में क्रमबद्ध किया गया, तो यह बहुत सीधा होगा। हालांकि, इस मामले में, डेटा अनसोल्ड है।
डिफ़ॉल्ट रूप से, XLOOKUP डेटा सेट में पहला मैच लौटाएगा। अंतिम मैच पाने के लिए, हम वैकल्पिक तर्क search_mode सेट कर सकते हैं, -1 से XLOOKUP को "अंतिम से पहले" खोजने के लिए। हालाँकि, हम इस दृष्टिकोण का उपयोग यहाँ नहीं कर सकते हैं क्योंकि इस बात की कोई गारंटी नहीं है कि किसी आइटम की नवीनतम कीमत अंतिम दिखाई देती है।
इसके बजाय, हम "सटीक या अगले सबसे छोटे" के एक अनुमानित मैच को बाध्य करने के लिए वैकल्पिक तर्क match_mode को -1 पर सेट कर सकते हैं, और नीचे दिए गए अनुसार लुकअप मान और लुकअप सरणी को समायोजित कर सकते हैं। G5 में सूत्र, नीचे कॉपी किया गया है:
=XLOOKUP(MAX(date),(item=F5)*date,price,,-1)
एक-एक करके तर्कों के माध्यम से काम करना, लुकअप_वेल्यू डेटा में सबसे बड़ी (नवीनतम) तारीख है:
MAX(date) // get max date value
लुकअप_अरे एक बुलियन लॉजिक एक्सप्रेशन के साथ लिया गया है:
(item=F5)*date
प्रत्येक आइटम को F5, "बेल्ट" में मान से तुलना करके, हमें TRUE / FALSE मानों की एक सरणी मिलती है:
(TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;TRUE;FALSE;FALSE)
जहां TRUE मान "बेल्ट" के लिए प्रविष्टियों का प्रतिनिधित्व करते हैं। यह एरे फिल्टर की तरह काम करता है। जब इसे नामित सीमा तिथि में मानों से गुणा किया जाता है , तो TRUE / FALSE मूल्यों का मूल्यांकन 1% और 0:
=(1;0;0;0;0;0;1;0;1;0;0)*date
परिणाम एक ऐसा सरणी है जिसमें केवल शून्य और बेल्ट के लिए दिनांक शामिल हैं:
=(43484;0;0;0;0;0;43561;0;43671;0;0)
ध्यान दें: सीरियल नंबर वैध एक्सेल तिथियां हैं।
यह सरणी लुकअप_अरे तर्क के रूप में सीधे XLOOKUP पर वितरित की जाती है।
Return_array नाम सीमा मूल्य (D5: D15) है
वैकल्पिक तर्क not_found प्रदान नहीं किया गया है।
Match_mode -1 के लिए सेट है, सटीक मिलान के लिए, या अगले सबसे छोटी वस्तु के लिए।
XLOOKUP अधिकतम दिनांक मान के लिए लुकअप सरणी के माध्यम से दिखता है। चूंकि सरणी को पहले से ही "बेल्ट" से जुड़ी तारीखों को बाहर करने के लिए फ़िल्टर नहीं किया गया है, इसलिए XLOOKUP केवल सबसे अच्छा मैच (या तो सटीक तारीख, या अगली सबसे छोटी तारीख) पाता है जो नवीनतम तारीख से मेल खाती है।
अंतिम परिणाम नवीनतम तारीख से जुड़ी कीमत है। किसी भी क्रम में डेटा सॉर्ट किए जाने पर सूत्र काम करना जारी रखेगा।