एक्सेल में एक नामांकित तालिका स्तंभ (सेल सामग्री के माध्यम से) का संदर्भ दें


12

मैं एक्सेल तालिका कॉलम को गतिशील रूप से एक्सेल 2007 में कैसे संदर्भित कर सकता हूं? मैं एक नामित तालिका के एक नामित कॉलम का संदर्भ देना चाहता हूं और संदर्भित कॉलम एक सेल के मूल्य के साथ अलग-अलग होगा।

मैं Excel में एक मेज है (इसे कॉल Table1 )। मैं इसके एक कॉलम और COUNTउस कॉलम में संख्याओं का संदर्भ देना चाहता हूं । मैं संदर्भित स्तंभ को किसी अन्य सेल ( A1) में एक मान से गतिशील रूप से पहचानना चाहता हूं ताकि मैं निम्नलिखित परिणाम प्राप्त कर सकूं: जब मैं बदलता हूं A1, तो तालिका 1 [ DynamicallyReferencedColumnName ] को गिनने वाला सूत्र नए संदर्भ में अद्यतन हो जाता है।

उदाहरण:

  • यदि A1= names    तो सूत्र बराबर होता COUNT(Table1[names])
  • यदि A1= lastnameतो सूत्र बराबर होता COUNT(Table1[lastname])

मैंने उपयोग करने की कोशिश की =COUNT(Table1[INDIRECT("$A$1")]), लेकिन एक्सेल का कहना है कि सूत्र में त्रुटि है।

मैं यह कैसे कर सकता हूँ?


PS मुझे यह MSDN दस्तावेज़ मिला जो प्रासंगिक हो सकता है: Excel पुनर्गणना


आप एक्सेल के किस संस्करण का उपयोग कर रहे हैं?
चार्लीआरबी

वर्तमान में Excel 2007 का उपयोग कर रहा है
rcphq

मुझे लगता है कि इस प्रश्न को इस प्रकार भी दोहराया जा सकता है: "एक्सेल में एक संरचित संदर्भ का एक गतिशील घटक"।
जिग्गंजर

जवाबों:


13

आप लगभग इसके साथ थे INDIRECT(), लेकिन आपका तर्क थोड़ा हटकर था। इसके बजाय यह प्रयास करें:

=COUNT(INDIRECT("Table1["&A1&"]"))

याद रखने की कुंजी यह है कि INDIRECT()पहले तर्क के लिए केवल पाठ (यानी, एक स्ट्रिंग) लिया जाता है। इस प्रकार, आपको फ़ंक्शन के पाठ के सभी भागों को पाठ के रूप में पास करना होगा।


वास्तव में काम किया है, मैं पूरी तालिका को संदर्भित करने की जरूरत है। यह काम किया! धन्यवाद!
rcphq

16

INDIRECT मेथड वर्क का उपयोग करना, लेकिन जब भी संभव हो इसे टाला जा सकता है क्योंकि यह एक अस्थिर कार्य है और आपकी स्प्रेडशीट पर बड़े पैमाने पर कम्प्यूटेशनल प्रभाव हो सकता है।

एक गैर-वाष्पशील विकल्प जो पूरा करता है कि आप क्या चाहते हैं INDEX / MATCH का उपयोग करें

COUNT(INDEX(Table1, 0, MATCH($A$1, Table1[#Headers], 0)))

टिम


एक्सेलेंट, मैं वास्तव में इस पद्धति पर बाद में आया और तब से इसका उपयोग कर रहा हूं। संयोगवश मैंने पुराने स्प्रेडशीट पर एक बड़ी मंदी की सूचना देना शुरू किया, जहां मैं एक दर्जन से अधिक चादरों पर अप्रत्यक्ष रूप से उपयोग कर रहा था। धन्यवाद!
rcphq

2

पहला स्टेप सेटअप एक टेक्स्ट सेल जिसमें कॉलम का नाम है जिसे आप संदर्भ के लिए कहते हैं ($ A $ 1) $ A $ 1 में उदाहरण के लिए "Column2" शामिल है।

फिर उस कॉलम की गिनती का पता लगाने के लिए, जो $ A $ 1 को संदर्भित करता है = count (अप्रत्यक्ष ("Table1 [" & $ a $ 1 & "]"))

इस अप्रत्यक्ष विधि का उपयोग तालिका संदर्भ के सभी भागों के निर्माण के लिए किया जा सकता है और उदाहरण के लिए विभिन्न तालिकाओं से देखने की व्यवस्था भी की जा सकती है

टिप। यदि $ 1 सेल को ड्रॉप डाउन सूची के रूप में मान्य किया जाता है जो एकल तालिका के शीर्षलेखों को इंगित करता है, तो शीर्ष लेख के शीर्षक में किसी भी परिवर्तन की तालिका में स्तंभों की संख्या में कोई परिवर्तन किया जाएगा।


1
(१) पहला चरण: वांछित कॉलम का नाम सेल में रखें A1।  ओपी पहले ही ऐसा कर चुका है, और सवाल में ऐसा कहता है।   (२) दूसरा चरण एक्सेल के उत्तर की एक सटीक प्रति है । (४) A1मान्य कॉलम नामों की ड्रॉपडाउन के रूप में कॉन्फ़िगर करना एक अच्छा विचार है, लेकिन मैं उत्तर के अंतिम पैराग्राफ को नहीं समझता।
स्कॉट

1

यहाँ एक्सेल में संरचित संदर्भों के बारे में एक बहुत अच्छा लेख है। ऐसा प्रतीत होता है कि यह एक्सेल 2010 में एक्सेल 2007 की तुलना में थोड़ा अलग तरीके से काम करता है।

एक्सेल तालिकाओं के साथ संरचित संदर्भों का उपयोग करना

मूल रूप से आप तालिका और फिर तालिका के भीतर कॉलम का संदर्भ लेंगे।

सामान्य एक्सेल टेबल

इस उदाहरण में आप तालिका 1 कॉलम 1 को इस तरह संदर्भित कर सकते हैं:

=COUNT(Table1[Column1])

आप अपनी तालिका में हेडर कॉलम को नाम दे सकते हैं। यदि मैंने Column1 का नाम बदलकर बिक्री कर दिया तो सूत्र बन जाएगा:

=COUNT(Table1[Sales])

हाँ, मेरी तालिका को अलग-अलग स्तंभों के साथ ठीक से नाम दिया गया है, जो मैं चाहता हूं वह एक तरीका =COUNT(Table1[A1])है जो मैं बताता हूं कि मैं सेल वैल्यू के आधार पर कौन सा कॉलम चाहता हूं, कुछ ऐसा है जहां A1 मैं सेल है जिसमें कॉलम नाम शामिल करना चाहते हैं
rcphq
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.