У меня проблемы с подпрограммой «Worksheet_Change», которая копирует и вставляет всю строку во второй лист («Завершено»), когда столбец «P» принимает значение «x».Это выглядит так:
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Application.EnableEvents = False
'If Cell that is edited is in column P and the value is x then
If Target.Column = 16 And Target.Value = "x" Then
'Define last row on completed worksheet to know where to place the row of data
LrowCompleted = Sheets("Completed").Cells(Rows.Count, "A").End(xlUp).Row
'Copy and paste data
Range("A" & Target.Row & ":P" & Target.Row).Copy Sheets("Completed").Range("A" & LrowCompleted + 1)
'Delete Row from Project List
Range("A" & Target.Row & ":P" & Target.Row).Delete xlShiftUp
End If
Application.EnableEvents = True
End Sub
Сам саб работает нормально, но если я копирую и вставляю в любое место на рабочем листе, саб активируется, и строка, в которую я вставляю, отправляется на мой «Завершенный» лист.
Я пока что безуспешно играл с предложением if.Например:
If Not Target.Column = 16 And Target.Value = "x" Is Nothing Then
Боюсь, что мне не хватает очевидного, и я благодарен за любую помощь.
Спасибо и всего наилучшего
PMHD