Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/41: Рейтинг темы: голосов - 41, средняя оценка - 4.71
saper
1

Метод UserForm.Show при повторном выполнении .Show

03.08.2008, 14:38. Показов 7488. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
При первом выполнении этого метода поисходит событие Activate_UserForm
Как сделать, чтобы при повторном выполнении .Show (без закрытия книги)происходило то же событие?
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.08.2008, 14:38
Ответы с готовыми решениями:

UserForm.Show - ошибка 5825 - объект был удалён
Здравствуйте, на строке "UserForm_Настройки.Show" получаю ошибку 5825 объект был удалён, но вижу,...

Метод Show приостанавливает выполнение макроса
Метод UserForm1.Showприостанавливает выполнение макроса, как этого избежать?

активировать документ шаблона при userform1.show (vbmodeless)
Столкнулся с проблемой переключения между документами word. Есть шаблон, который при запуске...

Игнорирование автозапуска form.show при открытии excel файла
Всем привет, есть 2 excel файла. Из одного запускаю макрос, чтобы он открывал несколько файлов...

6
Victory
03.08.2008, 20:57 2
А ты попробуй вызови ее как обычную процедурку или есть какие то более сложные завяски?
Tim
04.08.2008, 06:26 3
А UserForm_Initialize() не подходит?
saper
04.08.2008, 12:49 4
Я кажется понял. Дело в том, что если книга, в которой находится форма, скрыта, то и Userform_Activate() и UserForm_initialize() выполняются только при первом UserForm.Show. Мне кажется в этом случае лучше UserForm_Activate() обозвать как-нибудь по другому и вызывать ее при каждом запуске из стартового модуля например UserForm1.zzz()
1 / 1 / 0
Регистрация: 01.07.2008
Сообщений: 42
05.08.2008, 17:43 5
Все гораздо проще, когда форма тебе не нужна, пишешь в коде закрытия строку Unload Me - это если событие на закрытие вызывается с самой формы (например при нажатии на форме кнопки 'Закрой меня'), или Unload имя_твоей_формы - если событие на закрытие вызывается не формой (например из пункта меню). Данная команда удаляет форму из памяти, и соответственно при ее последующем вызове форма запускается в том, первоначальном виде, в котором ты ее сохранил в VBA проекте, другими словами, как ты правильно сказал, происходит инициализация формы. Если же ты поступишь как написал, т.е. создашь макрос инициализации, то через некоторое время будешь иметь проблемы с памятью, так как форма пропишется в памяти столько раз, сколько ты ее будешь инициализировать
0
Tim
06.08.2008, 11:38 6
Да IMHO DisCo прав.
Saper, почитай про методы формы Show Hide Load UnLoad Initialize Activate
saper
06.08.2008, 12:10 7
Премного благодарен
06.08.2008, 12:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.08.2008, 12:10
Помогаю со студенческими работами здесь

Не пересчитывается книга при повторном выполнении программы
Доброго времени суток, форумчане! Столкнулся со следующей проблемой. В таймере прописан код,...

если в коде ниже ob->show(); -> возвращает указатель "p" в "ob"? то почему для доступа к show не пишут так ob->->show();
#include <exception> #include <iostream> #include <string> #include <sstream> using namespace...

При выполнении Show() создается новая форма
Здравствуйте. Возникла такая проблема. В проекте имеется две формы с TextBox-ами. При заполнении...

Get data from the server (show loading indicator) and after show this data on the page.
What need to do: Get data from the server (show loading indicator) and after show this data on the...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru