2012-11-02 17 views
9

मेरे पास एकाधिक मानों के साथ एक एक्सेल सरणी है। कुछ 256 से कम वर्ण हैं और कुछ की लंबाई 256 से अधिक है।256 अक्षरों के एक्सेल Vlookup फ़ंक्शन सीमा को पार करने का तरीका

जब मैंने नमूना स्ट्रिंग का उपयोग करके VLookup करने का प्रयास किया, तो मुझे परिणाम मिल सकते हैं जब यह 256 वर्णों से कम पंक्तियों से मेल खाता है। पंक्तियों के लिए 256 वर्णों से अधिक, यह '# एन/ए' देता है।

क्या Vlookup का उपयोग करने का कोई तरीका है या Excel में कुछ अन्य अंतर्निहित फ़ंक्शन का उपयोग करके मैं इस सीमा को दूर कर सकता हूं?

उत्तर

16

आप इस

=VLOOKUP(A2,D2:Z10,3,FALSE)

यानी डी 2 में ए 2 को देख तरह VLOOKUP उपयोग कर रहे हैं: D10 और F2 से एक परिणाम लौटने: F10 तो इस सूत्र के बजाय

=INDEX(F2:F10,MATCH(TRUE,INDEX(D2:D10=A2,0),0))

कोशिश परिवर्तन

संपादित करें:

मैंने यहां एक नमूना लगाया - ए 2 में मूल्य: ए 10 जी 2: जी 10 के समान हैं लेकिन एक अलग क्रम में। उन मूल्यों में से प्रत्येक की लंबाई स्तंभ बी में दिखाया गया है, स्तंभ सी में VLOOKUP col एक मूल्यों> 255 वर्ण लेकिन col डी में सूचकांक/मैच सूत्र सभी मामलों

https://www.dropbox.com/s/fe0sb6bkl3phqdr/vlookup.xls

+0

INDEX (D2: D10 = A2,0) काम नहीं करता है और 356 वर्णों के लंबे मूल्यों के लिए झूठा लौट रहा है। – sandyiit

+1

ठीक है, शायद मुझे कुछ याद आ रहा है, आप क्या VLOOKUP सूत्र का उपयोग कर रहे हैं, वही वर्कशीट पर सबकुछ है? मैंने अपने उत्तर –

+0

में एक उदाहरण संलग्न किया है, मैं डेम समस्या के साथ एक अलग उपयोगकर्ता हूं, क्या इससे कोई फर्क पड़ता है कि यह एक ही चादर पर है? इस आउटपुट की तरह कुछ चाहता था: संपत्ति 'टेक्स्ट' सत्यापन विफल! अपेक्षित: 'सी: \ डेटा \ Sample_Data_for_QA', तुलना: 'वही', वास्तविक: 'आरएसएस फ़ीड'। ........ # एन/ए - आउटपुट ..... इंडेक्स समीकरण = INDEX ('[पुरानी रीग्रेशन.एक्सएलएमएम] रिग्रेशन रिपोर्ट'! $ ई $ 4: $ ई $ 96 , MATCH (बी 23, '[ओल्ड रीग्रेशन.एक्सएलएसएम] रीग्रेशन रिपोर्ट'! $ बी $ 4: $ बी $ 96)) ...... पिछला = वीएलओकेयूपी (बी 7, '[ओल्ड रेग्रेशन.एक्सएलएमएम] रिग्रेशन रिपोर्ट'! $ बी $ 4: $ जी $ 96, 4, गलत) –

3

मैं था में काम करता है पर विफल रहता है एक ही समस्या और मैंने इस कस्टम आदिम vlookup लिखा है। यह आपके कोशिकाओं के मूल्यों की लंबाई परवाह नहीं करता है।

Function betterSearch(searchCell, A As Range, B As Range) 
     For Each cell In A 
      If cell.Value = searchCell.Value Then 
        betterSearch = B.Cells(cell.Row, 1) 
        Exit For 
      End If 
      betterSearch = "Not found" 
     Next 

End Function 

पी एस, लेकिन मदद नहीं क्यों मूल VLOOKUP पेशेवरों द्वारा लिखित इस 10 लाइन समारोह की तुलना में अधिक खराब इस विशेष मामले में कार्यान्वित किया जाता है नहीं कर सकते?

संबंधित मुद्दे