Перейти к содержимому
Наше приложение «Дешевые авиабилеты» в AppGallery >>

VBA Excel. Смена названия кнопки при нажатии

    Смена названия кнопки на пользовательской форме с помощью кода VBA Excel при однократном нажатии на нее. Пример с задержкой выполнения кода.

    Смена названия кнопки

    Самый простой код VBA Excel для смены названия кнопки при однократном нажатии:

    Код размещается в модуле пользовательской формы.

    Пример использования

    Создайте аналогичную форму — два текстовых поля и кнопка (можно без названия кнопки, так как при инициализации формы она будет переименована):

    Следующий код VBA Excel при нажатии кнопки CommandButton1 меняет ее название и включает случайное задание цвета заливки для текстовых полей:

    Все процедуры размещаются в модуле пользовательской формы.

    При загрузке пользовательской формы кнопке CommandButton1 присваивается название «Старт». При однократном нажатии кнопки надпись меняется на «Стоп», и запускается процедура «Smena», которая с заданной периодичностью изменяет фоновые цвета текстовых полей TextBox1 и TextBox2.

    Цвета текстовых полей меняются с периодичностью, зависящей от значения аргумента «y» процедуры «Pausa», вызываемой в процедуре «Smena». При повторном нажатии кнопки, ее название меняется на «Старт», и процедура «Smena» останавливается.

    Строка CommandButton1.Caption = "Старт" в процедуре UserForm_Terminate() необходима для того, чтобы при закрытии пользовательской формы UserForm1 крестиком при работающей процедуре «Smena», не происходила ошибка, приводящая к перезагрузке приложения Excel.


    Содержание рубрики VBA Excel по тематическим разделам со ссылками на все статьи.

    Фразы для контекстного поиска: пауза, задержка, приостановка, задержка выполнения кода, изменение, заливка, фон.