Как вызвать функцию excel vba относительно значения в ячейке

Я написал функцию Excel VBA для выполнения определенных действий. Я хотел вызывать функцию всякий раз, когда я даю какой-либо текст в столбце A (по строке).

Скажем, если я дам command1 в ячейке A1, тогда должна быть вызвана функция sample(). Опять же, если я дам команду 2 в ячейке A2, тогда функция sample() должна быть вызвана во второй раз и так далее.

Таким же образом, пока я не дам какое-то значение в столбце A, функцию следует вызывать снова и снова.

Есть ли способ выполнить это действие.

Как событие Worksheet_Change?

urdearboy 10.08.2018 16:23
0
1
40
1

Ответы 1

Вы можете использовать событие Worksheet_Change, чтобы проверить, изменилась ли ячейка в столбце A:

Private Sub Worksheet_Change(ByVal Target As Range)

    If Not Intersect(Target, Columns("A")) Is Nothing Then 'only run when value in column A was changed
        MsgBox Target.Address & " was changed to " & Target.Value
        'run your function here
    End If

End Sub

Target - это ячейка, которая была изменена. Но обратите внимание, что Target не обязательно должен быть одной ячейкой. Это также может быть целый диапазон, который изменился, например. когда было выполнено копирование / вставка.

Другие вопросы по теме