Запуск макроса VBA при установке курсора в текстбокс (TextBox).

Запуск макроса VBA при клике(установке курсора) по текстбоксу(TextBox).

Часто возникает необходимость активации (запуска)  макроса VBA Excel при нажатии на поле текстбокса (установке в него курсора).

Рассмотрим написание данного кода VBA на примере формы UserForm1 имеющей поле TextBox1.

 

В поле TextBox1 по умолчанию содержатся данные . Например цифры 123. Необходимо сделать так, чтобы при установке курсора в поле текстбокса данные стирались и не мешали вводу новой информации.

TextBox1
TextBox1

Рассмотрим пример написания такого кода:

Если просто записать макрос через TextBox1_Change(), то ничего не выйдет, ведь макрос будет запускаться только при изменении ячейки. Поэтому следует записать макрос через действие TextBox1_MouseDown — срабатывание макроса при клике мышкой. У такой записи есть одна хитрость: если Вы не хотите, чтобы  макрос запускался при любом клике мыши, следует определить переменные через процедуру ByVal.

Пример кода макроса VBA «обнуляющего» (вернее опустошающего) ТекстБокс  далее:

  • Private Sub TextBox1_MouseDown (ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
  • Value = «»
  • End Sub

 

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *