पहली समस्या इस तथ्य से आती है कि MATCH
बयान "# एन / ए" लौटाएगा यदि यह मान नहीं पाता है। इसलिए INDEX
बयान से यह पता नहीं चलेगा कि इसके साथ क्या करना है, इसलिए आपको इस मामले का प्रबंधन करना होगा। इससे IF
निपटने के लिए एक बयान अच्छा होना चाहिए।
= IF (A1> A13,0, मैच (A13, A1: A11))
ऊपर दिए गए उदाहरण के साथ, यदि आपके पास एक मान है जो आपके सरणी की पहली संख्या से छोटा है, तो यह 0. वापस आ जाएगा। इसके बाद आपको इसे INDEX
बयान में प्लग करना होगा ।
इसके बाद आपको इस तथ्य को प्रबंधित करना होगा कि आप गोल करना चाहते हैं और नीचे नहीं। यह भी आसानी से और IF
बयान के साथ प्रबंधित किया जा सकता है । आप लक्ष्य सेल के साथ ए कॉलम में संख्या की तुलना यह देखने के लिए कर सकते हैं कि क्या वे समान हैं, यदि आप अपनी पंक्ति को 1 से नहीं बढ़ाते हैं। आपको बस IF
बयान से कुछ मदद के साथ एक-दूसरे के भीतर INDEX
बयान दर्ज करना होगा।
= IF (INDEX (A1: A11, IF (A1> A13,0, MAT13 (A13, A1: A11))) = A13, IF (A1> A13,0, MATCH (A13, A1: A11)), IF A1> A13,0, मैच (A13, A1: A11)) + 1)
तो यह मूल रूप से यह बना देगा कि यह अब नीचे के बजाय गोल हो गया है।
अंतिम चरण इसे बनाना है ताकि आपको पहले वाले के बजाय 2 कॉलम का मान मिले। इस INDEX
कथन के साथ आपका यह अधिकार था , हमें बस उन सभी को एक साथ रखने की आवश्यकता है।
= INDEX (B1: B11, IF (INDEX (A1: A11, IF) (A1> A13,0, MATCH (A13, A1: A11)) = A13, IF (A1> A13,0, MATCH (A13, A1): A11)), IF (A1> A13,0, MATCH (A13, A1: A11)) + 1))
और यह बिल्कुल वही परिणाम देता है जो आप अपने प्रश्न में चाहते थे। लंबे फार्मूले के लिए क्षमा करें, लेकिन आप कम या ज्यादा जटिल चाहते थे।
A13
कुछ इस तरह सेट होता है तो14
यह वापस आ जाता है#VALUE!
। लेकिन मैंने कुछ ट्विकिंग की और निम्नलिखित काम किया।=INDEX(B1:B11, IF(A1 > A13, 1, IF(INDEX(A1:A11, MATCH(A13,A1:A11)) = A13, MATCH(A13,A1:A11), MATCH(A13,A1:A11)+1)))