Поиск совпадения и получение данных из одной строки - PullRequest
1 голос
/ 06 июня 2019

Я работаю с этим кодом, чтобы найти соответствие между A column value(sheet1) и E column value (sheet2).Если есть совпадение, тогда получите значение из этой строки и поместите это значение в sheet2.Код работает отлично и быстрее.Тем не менее, я сталкиваюсь с этой странной проблемой, несмотря на совпадение (особенно данных в середине столбца) между A column value(sheet1) и E column value (sheet2), это ничего не дает мне.

Dim wsDest1 As Worksheet
Set wsDest1 = ThisWorkbook.Worksheets("sheet2")

Dim wsLookup1 As Worksheet
Set wsLookup1 = ThisWorkbook.Worksheets("sheet1")

Dim lasRow1 As Long
lasRow1 = wsDest1.Cells(wsDest1.Rows.Count, "E").End(xlUp).Row

Dim MatchedRow1 As Double

Dim iRow1 As Long
For iRow1 = 2 To lasRow1
    MatchedRow1 = 0 'initialize!
    On Error Resume Next
    MatchedRow1 = Application.WorksheetFunction.Match(wsDest1.Cells(iRow1, "E").Value, wsLookup1.Columns("A"), 1)
    On Error GoTo 0

    If MatchedRow1 <> 0 Then
        If wsDest1.Cells(iRow1, "E").Value = wsLookup1.Cells(MatchedRow1, "A").Value Then
            wsDest1.Cells(iRow1, "A").Value = wsLookup1.Cells(MatchedRow1, "J").Value
            wsDest1.Cells(iRow1, "B").Value = wsLookup1.Cells(MatchedRow1, "H").Value
            wsDest1.Cells(iRow1, "C").Value = wsLookup1.Cells(MatchedRow1, "G").Value
            wsDest1.Cells(iRow1, "D").Value = wsLookup1.Cells(MatchedRow1, "N").Value
            wsDest1.Cells(iRow1, "F").Value = wsLookup1.Cells(MatchedRow1, "D").Value
        End If
    End If
Next iRow1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...