कैसे मैच के लिए दो स्तंभों और बदले में मूल्य में तीसरे VBA

0

सवाल

मैं मैच के लिए दो कॉलम, एक "all_filenames" जबकि अन्य "part_number" मैं का इस्तेमाल किया है VLOOKUP मैचों को खोजने के लिए और यह काम किया है. हालांकि, समस्या यह है कि के तहत "all_filenames वहाँ के आसपास 2,000 डेटा और के तहत "part_number" वहाँ केवल 500. Datas के तहत "part_number" मैच सकता है कई datas के तहत "all_filenames" लेकिन समस्या यह मैच नहीं करता है के विशिष्ट नाम है. उदाहरण: एक स्तंभ के लिए किया जाएगा all_filenames, इन कर रहे हैं, संग्रहीत किया जाता है क्या: XP605_Top.jpg AR131_Front.jpg 28528_765BP_Front.jpg 2543_Front.jpg. पर स्तंभ B में है, जो होगा "part_number" यह के रूप में संग्रहीत: XP605.jpg AR131.jpg 28528.jpg 2543.jpg. सिद्धांत रूप में तो इस पर विचार किया जाएगा के रूप में एक मैच, लेकिन बाद से वहाँ हैं कुछ शब्द या संख्या लापता स्तंभ से एक यह मैच नहीं होगा. तो मेरी समस्या है यूडीएफ करने के लिए इस समस्या का समाधान । नहीं यकीन है कि अगर मैं समझा यह काफी अच्छा है । कर सकते हैं किसी को भी मेरी मदद? धन्यवाद ।

Public Function WhereIs(rIn As Range, rList As Range) As String
   Dim s1 As String, r As Range
   Dim s2 As String
   WhereIs = ""
   s1 = rIn.Text

   For Each r In rList
      s2 = r.Text
      If InStr(1, s2, s1) > 0 Then
         If WhereIs = "" Then
            WhereIs = r.Address(0, 0)
         Else
            WhereIs = WhereIs & "," & r.Address(0, 0)
         End If
      End If
   Next r

   If WhereI <> "" Then WhereIs = "no match" 
      
End Function

अब तक यह केवल कोड मैं मिल गया है और करने की कोशिश की लेकिन समस्या यह है कि यह अभी भी मैच नहीं करता है क्योंकि मुझे लगता है कि यह करने के लिए एक सटीक मैच. मैं सच में कर रहा हूँ के साथ नया VBA तो मैं अभी भी कर रहा हूँ एक कठिन समय इसे का उपयोग.

मैं की जरूरत है 'मैच' मूल्य के लिए बदले में एक और स्तंभ के साथ भाग संख्या, और वहाँ रहे हैं यदि एकाधिक मैचों की जरूरत है मैं यह सब करने के लिए अंदर हो सकता है स्तंभ.

excel vba
2021-11-23 23:07:28
1

सबसे अच्छा जवाब

0

आप बस बाईं ओर का उपयोग करें और मिल को साफ करने के लिए अपने कॉलम के डेटा । यदि आपकी फ़ाइल नाम में एक स्तंभ तो

=LEFT(A1,FIND("_",A1)-1)

होगा सब कुछ को दूर करने के लिए पहली "_". के लिए अपने भागों सूची

=LEFT(C1,LEN(C1)-4)

से छुटकारा मिल जाएगा ".jpg" नाम के हिस्से (या आप का उपयोग कर सकता है की जगह के रूप में सुझाव दिया है, टिप्पणी में). यह होगा बनाने के लिए VLOOKUP फ़ंक्शन खुश

2021-11-24 03:21:24

अन्य भाषाओं में

यह पृष्ठ अन्य भाषाओं में है

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

इस श्रेणी में लोकप्रिय

लोकप्रिय सवाल इस श्रेणी में