मेरे पास यह फॉर्मूला है एक्सेल में, एक पंक्ति संख्या वापस करने के लिए:
=MATCH(INDIRECT(ADDRESS(ROW(),4)),DayOffRequests!$A$1:$A$100,0)
और यह ठीक काम करता है।
मैं एक नया नाम बनाना चाहूंगा (DAYS_OFF_ROW
) और इसे इस सूत्र को असाइन करें।
यहाँ मैंने नाम प्रबंधक में क्या किया है:
लेकिन जब मैं इसे एक सेल में लिखता हूं: =DAYS_OFF_ROW
इसे कहते हैं #VALUE!
जब मैं सेल में एक ही सूत्र लिखता हूं, तो यह मुझे वह पंक्ति संख्या देता है जिसकी मुझे तलाश है।
क्यों कहता है #VALUE!
और सूत्र की तरह पंक्ति संख्या नहीं है?
उत्तर:
जवाब के लिए 0 № 1सबसे पहले रो () उस पंक्ति को लौटाता है जिस पर सेल हैरहता है। यदि आप रो () को अप्रत्यक्ष रूप से रखते हैं तो आपको एक त्रुटि मिलेगी क्योंकि कोई सेल नहीं है जिसके लिए एक्सेल एक पंक्ति () खोज सकता है। तो बल्ले से ही सही, आपका फॉर्मूला नामांकित सीमा के लिए बकवास है।
दूसरा, भले ही एक्सेल के लिए कुछ जादू का तरीका हो, जिसे पता हो Row()
तुमने यहाँ की परवाह की, Match
doesn "t एक सीमा वापस करें।" 5 "या" 50 "जैसी किसी सरणी में केवल एक स्थिति। जब आप किसी नामित श्रेणी को परिभाषित करने के लिए सूत्र का उपयोग करते हैं, तो सूत्र का परिणाम एक सीमा होना चाहिए। इसलिए आप एक और कर सकते हैं। Indirect
पसंद =Indirect("A" & Match(foo,bar))
या ऐसा कुछ जिससे आपके फॉर्मूले से निकला परिणाम वास्तव में आपकी शीट में एक सीमा को संदर्भित करता है।
जवाब के लिए 0 № 2
यह काम करता है अगर मैं इस सूत्र को नाम सेट करता हूँ =MATCH(!$D1,DayOffRequests!$A$1:$A$100,0)
बेशक मुझे नाम सेट करते समय फ़ील्ड A1 में होना चाहिए। अब इसका संदर्भ चौथा स्तंभ और जो भी पंक्ति मैं है