Excel सूत्र: INDEX फ़ंक्शन के साथ रिटर्न ऐरे -

विषय - सूची

सामान्य सूत्र

=SUM(INDEX(range,N(IF(1,(1,2,3)))))

सारांश

INDEX को दूसरे फ़ंक्शन में आइटम की एक सरणी वापस करने के लिए, आप IF और N फ़ंक्शन के आधार पर अस्पष्ट चाल का उपयोग कर सकते हैं। दिखाए गए उदाहरण में, E5 में सूत्र है:

=SUM(INDEX(data,N(IF(1,(1,2,3)))))

जहाँ "डेटा" नाम सीमा B5: B10 है।

स्पष्टीकरण

INDEX को किसी अन्य फ़ंक्शन के लिए एक से अधिक मान वापस करने के लिए आश्चर्यजनक रूप से मुश्किल है। वर्णन करने के लिए, निम्न सूत्र का उपयोग नाम सीमा "डेटा" में पहले तीन वस्तुओं को वापस करने के लिए किया जा सकता है, जब एक मल्टी-सेल एरे फॉर्मूला के रूप में दर्ज किया जाता है।

(=INDEX(data,(1,2,3)))

परिणाम D10: F10 की सीमा में देखे जा सकते हैं, जिसमें सही ढंग से 10, 15 और 20 शामिल हैं।

हालाँकि, यदि हम सूत्र फ़ंक्शन में सूत्र लपेटते हैं:

=SUM(INDEX(data,(1,2,3)))

अंतिम परिणाम 10 है, जबकि यह 45 होना चाहिए, भले ही एक सरणी सूत्र के रूप में दर्ज किया गया हो। समस्या यह है कि INDEX सरणी में पहला आइटम SUM फ़ंक्शन में लौटाता है। INDEX को SUM की कई वस्तुओं को वापस करने के लिए मजबूर करने के लिए, आप इस तरह से N और IF फ़ंक्शन में एरे को लगातार लपेट सकते हैं:

=SUM(INDEX(data,N(IF(1,(1,2,3)))))

जो 45 का सही परिणाम देता है। इसी प्रकार, यह सूत्र:

=SUM(INDEX(data,N(IF(1,(1,3,5)))))

सही ढंग से 60, 10, 20 और 30 का योग देता है।

इस अस्पष्ट तकनीक को कभी-कभी "डीरेफेरेंसिंग" कहा जाता है, क्योंकि यह INDEX को सेल संदर्भों के रूप में परिणाम से निपटने से रोकता है, और बाद में सभी लेकिन सरणी में पहला आइटम छोड़ देता है। इसके बजाय, INDEX SUM में पूर्ण मानों को सहेजता है। Jeff Weir का स्टैकओवरफ्लो पर यहाँ एक अच्छा स्पष्टीकरण है।

पाठकों पर ध्यान दें: मुझे यकीन नहीं है कि यह क्यों काम करता है यदि आप एक स्पष्ट विवरण प्रदान कर सकते हैं, तो मैं शामिल करने के लिए अपडेट करूंगा।

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