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

Это пример кода, который показывает, как изменить курсор.

Option Explicit

_Sub macro1 () _

Application.Cursor = xlWait

‘ Код здесь

Application.Cursor = xlDefault

End Sub После операторов dim (в этом примере кода их еще нет) мы устанавливаем Application.Cursor = xlWait * в начале кода.

  • Затем вы можете включить любой код, который вам нужно запустить. Если вам нужно вызвать несколько подпрограмм / процедур, вы можете сделать это здесь или просто ввести здесь весь код.

Затем, непосредственно перед оператором End Sub, вам нужно вернуть курсор к значению по умолчанию. Мы делаем это с помощью строки Application.Cursor = xlDefault *

__

Вы можете включить все другие необходимые вам операторы, например Application.ScreenUpdating = False_or_Application.DisplayAlerts = False _along с _Application.Cursor = xlWait_statement. Точно так же вы можете включить _Application.ScreenUpdating = True или Application.DisplayAlerts = True вместе с оператором Application.Cursor = xlDefault *.

__

  • Чтобы скопировать этот код, нажмите клавиши Alt + F11 на клавиатуре. Откроется модуль кода. Слева вы увидите объекты Microsoft Excel. Щелкните правой кнопкой мыши и выберите Вставить, а затем выберите Модуль. Скопируйте код в окно кода справа.