2012-04-17 17 views
5

मैं शीट 2 में कॉलम के साथ शीट 1 में कॉलम की तुलना करने की कोशिश कर रहा हूं, फिर शीट 2 में कॉलम बी से कॉलम बी में इसी मान को कॉपी करें (जहां कॉलम मान मानता है)। मैं यह कैसे करना है इस पर पढ़ने की कोशिश कर रहा हूं, लेकिन मुझे यकीन नहीं है कि मुझे मैक्रो बनाने की कोशिश करनी चाहिए, या यदि ऐसा करने का एक आसान तरीका है, तो शायद वीएलओकेक या मैच? मैं वास्तव में परिचित नहीं हूं कि ये कार्य कैसे काम करते हैं।Excel में दो कॉलम (विभिन्न चादरों से) की तुलना कैसे करें और पहले दो कॉलम मिलान होने पर मान को संबंधित कॉलम से कॉपी करें?

इसके अलावा, अगर यह एक फर्क नहीं पड़ता, वहाँ स्तंभ में मान दोहराया जाएगा शीट ख 2.

शीट 1

12AT8001 1 
12AT8002 2 
12AT8003 3 
12AT8004 4 
12AT8005 5 
12AT8006 6 

शीट 2

12AT8001 
12AT8001 
12AT8001 
12AT8001 
12AT8001 
12AT8002 
12AT8002 
12AT8002 
12AT8002 
12AT8002 
12AT8003 
12AT8003 
12AT8003 
12AT8003 
12AT8003 

उत्तर

5

Vlookup अगर अच्छा है संदर्भ मान (कॉलम ए, शीट 1) आरोही क्रम में हैं। एक अन्य विकल्प

यह वही है आप शीट पर स्तंभ बी में रखा है और सूचकांक मैच है, जो कोई फर्क नहीं पड़ता आदेश (जब तक स्तंभ एक में मूल्यों के रूप में, चादर 1 अद्वितीय हैं) इस्तेमाल किया जा सकता है 2

=INDEX(Sheet1!A$1:B$6,MATCH(A1,Sheet1!A$1:A$6),2) 

Sheet1!A$1:B$6 और Sheet1!A$1:A$6 नामित श्रेणियों के रूप में सेट करना इसे थोड़ा अधिक उपयोगकर्ता के अनुकूल बनाता है।

+0

जब मैं डेटा के सबसेट पर कि सूत्र का उपयोग किया (कि मैं प्रश्न में एक उदाहरण के रूप में इस्तेमाल किया) यह काम किया। हालांकि, जब मैंने इसे डेटा के पूर्ण सेट (शीट 1 के लिए शीट 1 और 2 9 4 9 पंक्तियों के लिए 600 पंक्तियों) पर कोशिश की तो उसने मुझे # एन/ए त्रुटि दी। मैंने सूत्र को पढ़ने के लिए अद्यतन किया: = INDEX (शीट 1! एक $ 1: बी $ 600, MATCH (ए 1, शीट 1! एक $ 1: ए $ 600), 2)। – kmcamara

+0

फिर मैंने शीट 1 पर पूर्ण 600 पंक्तियों के साथ प्रयास किया, लेकिन इसे शीट 2 के लिए उसी टेस्ट सबसेट में रखा जो मैंने उदाहरण में उपयोग किया था। उसी = INDEX (शीट 1! ए $ 1: बी $ 600, MATCH (ए 1, शीट 1! ए $ 1: ए $ 600), 2) फॉर्मूला का उपयोग करके, यह सभी पंक्तियों के लिए 276 की एक मनमाना संख्यात्मक संख्या लौटा दी। – kmcamara

+0

शायद यह काम नहीं कर रहा है क्योंकि आईडी शीट 2 के लिए डेटा के पूर्ण सेट में है, शीट 1 के समान क्रम में नहीं है (जैसे वे उदाहरण में थे)? उन सभी आईडी को पूर्ण सेट में मिश्रित किया गया है। । । यही कारण है कि मुझे हाथ से मिलान करने से कुछ तेज की जरूरत है। शीट 1 के कॉलम ए में सभी मान रास्ते से अनूठे हैं। किसी भी विचार के रूप में यह पूर्ण सेट पर क्यों काम नहीं करेगा, या कोशिश करने के लिए कुछ और कर रहा है? – kmcamara

0

एक सत्य तालिका बनाएं और मूल्य प्राप्त करने के लिए SUMPRODUCT का उपयोग करें। इसे शीट 2 पर सेल बी 1 में कॉपी करें और जहां तक ​​आपको आवश्यकता हो, कॉपी करें:
=SUMPRODUCT(--($A1 = Sheet1!$A:$A), Sheet1!$B:$B)
जो सत्य तालिका बनाता है वह हिस्सा है:
--($A1 = Sheet1!$A:$A)
यह 0 और 1 की एक सरणी देता है। 1 जब मान मेल खाते हैं और 0 जब वे नहीं करते हैं। उसके बाद कॉमा मूल रूप से "मजाकिया" मैट्रिक्स गुणा को कॉल करेगा और परिणाम लौटाएगा। हालांकि मैंने आपके प्रश्न को गलत समझा होगा, क्या शीट 1 के कॉलम ए में डुप्लिकेट वैल्यू हैं?

+0

मैं आपके समाधान का पालन नहीं कर रहा हूं :(लेकिन शीट 1 के कॉलम ए में डुप्लीकेट नहीं हैं। – kmcamara

+0

कोशिश करें केवल पहले फॉर्मूला को कॉपी और पेस्ट करें जिसे मैंने आपको शीट 2 पर सेल बी 1 में दिया है और जहां तक ​​आपको आवश्यकता है उसे भरें। अपने वर्कशीट्स को मानना ​​है कि आपने अपनी पोस्ट में किस प्रकार उल्लेख किया है, इसे सही मान देना चाहिए। यह मूल रूप से 1 * मान को गुणा कर रहा है शीट 1 के कॉलम बी जब भी शीट 1 का कॉलम ए एस के कॉलम ए में मान से मेल खाता है हीट 2। – deusxmach1na

-1

प्रयास करें:

sheet 2 a1 =vlookup(sheet2a1,sheet1$a$1:$b$6,2) 

तो यह नीचे खींचें।

यह काम करना चाहिए।

3

किमीकैमरा की खोज के रूप में, यह वास्तव में ऐसी समस्या है जो VLOOKUP को हल करने का इरादा है, और vlookup का उपयोग करना नौकरी पाने के वैकल्पिक तरीकों का सबसे सरल तरीका है।

lookup_value के लिए तीन पैरामीटर के अलावा, table_range की खोज की जा सकती है, और वापसी मूल्यों के लिए column_index, VLOOKUP एक ​​वैकल्पिक चौथा तर्क लेता है जिसे एक्सेल दस्तावेज़ "range_lookup" कहते हैं।

मौत पर विस्तार करना एपिल की व्याख्या, यदि यह तर्क सत्य (या 1) पर छोड़ा गया है या छोड़ा गया है, तो तालिका सीमा को सामान्य रूप से सामान्य रूप से वापस करने के लिए रेंज के पहले कॉलम में मानों के आरोही क्रम में क्रमबद्ध किया जाना चाहिए "सही" मान माना जा सकता है। इस डिफ़ॉल्ट व्यवहार के तहत, फ़ंक्शन एक सटीक मिलान के आधार पर एक मान वापस करेगा, यदि कोई पाया जाता है, या सटीक मिलान नहीं मिलता है तो एक अनुमानित मिलान नहीं मिलता है।

यदि मैच अनुमानित है, तो फ़ंक्शन द्वारा लौटाया गया मान अगले सबसे बड़े मान पर आधारित होगा जो lookup_value से कम है।उदाहरण के लिए, यदि शीट 1 में तालिका से "12AT8003" गायब थे, तो शीट 2 में उस मान के लिए लुकअप फॉर्मूला '2' लौटाएंगे, क्योंकि "12AT8002" तालिका सीमा के लुकअप कॉलम में सबसे बड़ा मान है जो कम है "12AT8003" से अधिक। (VLOOKUP का डिफ़ॉल्ट व्यवहार सही अर्थ बनाता है, उदाहरण के लिए, लक्ष्य कर तालिका में दरों को देखना है।)

हालांकि, यदि चौथा तर्क गलत (या 0) पर सेट किया गया है, तो VLOOKUP एक ​​लुक-अप देता है मूल्य केवल तभी होता है जब कोई सटीक मिलान हो, और यदि नहीं है तो # एन/ए का त्रुटि मान। नो-मैच को शानदार ढंग से पकड़ने के लिए अब एक इफेरर फ़ंक्शन में सटीक VLOOKUP को लपेटने का सामान्य अभ्यास है। IFERROR की शुरूआत से पहले, एक मैच देखने के पहले एक बार, और एक बार वास्तविक मिलान मूल्य वापस करने के लिए VLOOKUP फ़ॉर्मूला का उपयोग करके किसी IF फ़ंक्शन के साथ कोई मिलान नहीं किया गया था।

शुरू में कठिन गुरु हालांकि, deusxmach1na प्रस्तावित है समाधान है कि VLOOKUP के लिए विकल्प की एक शक्तिशाली सेट पर एक भिन्नता है एक स्तंभ या को सूची के लिए मूल्यों वापस जाने के लिए इस्तेमाल किया जा सकता देखने स्तंभ के छोड़ दिया है, मामलों को संभालने के लिए विस्तार जहां एक से अधिक मानदंडों पर एक सटीक मिलान की आवश्यकता होती है, या कई मानदंडों के बीच या साथ ही मिलान शर्तों को शामिल करने के लिए संशोधित किया जाता है।

दोहरा kcamara का चुना हुआ समाधान, इस समस्या के लिए VLOOKUP सूत्र होगा:

=VLOOKUP(A1,Sheet1!A$1:B$600,2,FALSE) 
संबंधित मुद्दे