하는 방법과 일치하는 두 개의 열을 반환 값에서 세 번째에서 VBA

0

질문

가 일치하는 두 개의 열을,하나는"all_filenames"다른 동안에는"part_number"내가 사용 VLOOKUP 일치하는 항목을 찾고 있었습니다. 그러나 문제는 아래"all_filenames 이 2,000 데이터와 아래"part_number"만 있 500. 는 자료에"part_number"수치는 여러 자료에"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. 그래서 이론이 일치하는 것으로 간주되지만이 있기 때문에 몇 가지 단어이나 수 누락에서 열리지 않을 것이 일치합니다. 그래서 내 문제를 만드는 UDF 를 이 문제를 해결합니다. 가 확실하지 않으면 내가 설명했다 그것은 좋은 충분합니다. 누구든지 나를 도울 수 있습니까? 감사합니다.

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ý
..................................................................................................................