backtotop
изменение ячейки 2
Абзац в Excel. Как начать с новой строки в ячейке

В Excel множество функций, но некоторые возможности не видны на первый взгляд. Неудивительно, ведь неизвестно что может пригодиться пользователю, поэтому нет смысла выносить все на основную панель. Часто нужно выполнить какое-то действие при определенном действии, это часть можно задать формулой. Но что если вам необходимо выполнять любое действие/макрос при изменении ячейки листа Excel. Это тоже можно сделать при помощи макроса VBA. Как запустить макрос при изменении ячейки?

Чтобы запустить макрос (действие) при изменении данных в ячейке существует несколько возможностей. Мне больше всего нравится эта конструкция:

Макрос, выполняемый при изменении ячейки

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
If Target = 0 Then
MsgBox "Запустите Ваше действие"
End If
End If
End Sub

Вставьте вместо MsgBox «Запустите Ваше действие» нужный код и при условии, что ячейка А1 становится =0 при изменении значения этой ячейки, начинает выполняться ваш макрос.

Как запустить макрос при изменении ячейки?

Сперва включите вкладку Разработчик. Затем пройдите в меню Visual Basic, первый значок слева на картинке:

изменение ячейки

Важно! Чтобы запустить код типа Worksheet_Change, необходимо записать код не в модуль макроса, а в саму книгу!

макрос при изменении ячейки

Выберите нужную книгу и нужный лист (в примере Лист1) и в правом окне вставьте код, указанный выше. Если вам нужно, чтобы ваше действие выполнялось, если ячейка изменяет значение на заполненную, то нужно изменить текст Target = 0 на Target <> 0.

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

 

Поделитесь нашей статьей в ваших соцсетях:

(Visited 69 times, 24 visits today)
Абзац в Excel. Как начать с новой строки в ячейке

Комментарии:

К этой записи пока нет комментариев. Возможно вы будете первым?

Оставьте ваш комментарий здесь:

You have to agree to the comment policy.

пять × 5 =