Ограничить Worksheet_Change указанным диапазоном ячеек - PullRequest
0 голосов
/ 02 августа 2020

Я хочу записать список данных в реальном времени на отдельном листе.

Нашел этот код в Интернете, который работает.

Как изменить диапазон с одной ячейки A1 на Range A1: D30?

Private Sub Worksheet_Change(ByVal Target As Range)
Dim dest As Range
Application.EnableAnimations = False
On Error GoTo line1
If Target.Address <> "$A$1" Then GoTo line1
    Set dest = Worksheets("sheet2").Cells(Rows.Count, "a").End(xlUp).Offset(1, 0)
    'MsgBox dest.Address
    Target.Copy dest
line1:
Application.EnableEvents = True
End Sub

1 Ответ

1 голос
/ 02 августа 2020

Это можно сделать без пользовательской функции. VBA уже содержит все, что вам нужно.

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:D30")) Is Nothing Then

    ' run some code
End If

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