Как запрограммировать макрос для сравнения столбцов в двух таблицах Excel и добавления совпадений на третий лист - PullRequest
0 голосов
/ 07 января 2020

Я искал и пытался встроить любой код, с которым столкнулся на этом сайте (с сегодняшнего утра), в работающее приложение с неработающими или плохими результатами.

Мне нужно соответствовать, если Идентификационные номера в столбце «А» листа 1 совпадают в соответствующем столбце «А» листа 2 и просто вставьте совпадения в столбец «А» на листе 3. Диапазон столбцов на листе 1 не совпадает с диапазоном листа 2, и на листе 3 должны быть вставлены совпадения в каждую строку по мере их нахождения (т.е. между ними не должно быть пустых строк). Мне не нужно ничего делать с числами, которые не совпадают.

Я попытался изменить код из другого потока; он ловит некоторые совпадения, но не все. Я предполагаю, что диапазоны неверны, но я не знаю, как кодировать это в VBA. Кроме того, в колонке есть пробелы, в которых должны быть размещены некоторые другие дубликаты. «Если найдено ничего, то x = 0» не является необходимым (и может даже вызывать вышеупомянутую ошибку), но если я это устраню, я получу ошибку несоответствия типов.

Sub matchPAs()

Dim x, i, total, fRow As Integer
Dim found As Range

total = Sheets(1).Range("A" & Rows.Count).End(xlUp).Row

For i = 1 To total
    match1 = Worksheets(1).Range("A" & i).Value
 Set found = Sheets(2).Columns("A:A").Find(what:=match1)
If found Is Nothing Then
    x = 0
Else
    fRow = Sheets(2).Columns("A:A").Find(what:=match1).Row
    Worksheets(3).Range("A" & i).Value = Worksheets(1).Range("A" & fRow).Value

 End If
Next i

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...