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

Я пытаюсь сопоставить два столбца в двух листах. Если они совпадают, я хочу, чтобы строка на листе 1 заменила строку на листе 2.

Я подошел ближе, но теперь мне нужно перезаписать эту строку.

Я попытался selection.paste, но это помогло не работает.

Я пробовал это:

Sub Loop_Example()

Dim Firstrow As Long
Dim Lastrow As Long
Dim Lrow As Long
Dim CalcMode As Long
Dim ViewMode As Long

Sheets("Mutatie overzicht bezetting").Range("B5:AC5").Select
Selection.Copy

Sheets("BEZETTING 2020").Activate
With ActiveSheet
    .Select
    Firstrow = .UsedRange.Cells(1).Row
    Lastrow = .UsedRange.Rows(.UsedRange.Rows.Count).Row
    For Lrow = Lastrow To Firstrow Step -1
        With .Cells(Lrow, "B")
            If Not IsError(.Value) Then
                If .Value = Sheets("Mutatie overzicht bezetting").Range("C5") Then .EntireRow.Select
            End If
        End With
    Next Lrow
End With

End Sub

1 Ответ

1 голос
/ 27 января 2020

Как сказано в SJR, ваш синтаксис в третьей строке выключен. Также вам не хватает ссылок на листы, что делает ваш код довольно запутанным. Пожалуйста, смотрите код ниже, чтобы быть ближе к тому, что вам нужно:

Sub LoopThroughCities()

Dim LstRw As Long, ThsRw As Long, ThsEMPLOYEE As String

With Sheets("Bezetting 2020")
    LstRw = .Cells(.Rows.Count, 1).End(xlUp).Row
End With

ThsEMPLOYEE = InputBox("Which employee do you want to search for?")

If Len(ThsEMPLOYEE) = 0 Then Exit Sub

For ThsRw = 2 To LstRw

    With Sheets("Sheettocopyfrom")
        If .Cells(ThsRw, 5).Value = ThsEMPLOYEE Then .Cells(ThsRw, 22).Resize(, 3).Copy Sheets("Sheettocopyto").Cells(ThsRw, 22)
    End With

Next

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