Как в VBA создать окно типа "Please wait..." ?

Узнай цену своей работы

Формулировка задачи:

запускается процедура, генерирующая данные:
Sub Generate()
нужно показать окно "Please wait"
... генерация данных
нужно убрать окно "Please wait"
End Sub
Я создал UserForm с текстом "Please wait" и вызываю его из процедуры:
Sub Generate()
Load UserForm
UserForm.Show
... генерация данных
UserForm.Hide
End Sub
Проблема в том, что после UserForm.Show форма получает фокус и ждет... а нужно чтобы код продолжал выполняться...
Спасибо.

Решение задачи: «Как в VBA создать окно типа "Please wait..." ?»

textual
Листинг программы
<font color="blue">Private</font> <font color="blue">Sub</font> UserForm_Activate()
    <font color="blue">Dim</font> intI <font color="blue">As</font> <font color="blue">Integer</font>

    <font color="blue">For</font> intI = <font color="darkblue"><b>1</b></font> <font color="blue">To</font> <font color="darkblue"><b>10000</b></font>
        DoEvents

       <font color="00AA00">' Здесь выполняем какие-либо действия.</font>
       <font color="00AA00">' например печатаем:</font>
        Debug.<font color="blue">Print</font> intI
    <font color="blue">Next</font> intI

    Unload <font color="blue">Me</font>
<font color="blue">End</font> <font color="blue">Sub</font>

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.091 из 5
Похожие ответы