powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VBA (Excel) -> UserForm.Show
6 сообщений из 6, страница 1 из 1
VBA (Excel) -> UserForm.Show
    #33352295
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет!

Подскажите как узнать какая форма отображается в данный момент и взависимости от этого выполнить определённое действие. Например по нажатию кнопки если отображается форма1, то выдавать сообщение 1 и т.д.

Аленочка тм
...
Рейтинг: 0 / 0
VBA (Excel) -> UserForm.Show
    #33352322
Андрей Il
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поконкретнее. Лучше пример. Используй Forms.Count и Forms(index as long)
...
Рейтинг: 0 / 0
VBA (Excel) -> UserForm.Show
    #33352340
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей, не знаю как ещё конкретней.

Есть форма 1, на ней батон, по нажатию на который появляется форма 2.

Есть форма 3, на ней батон, по нажатию на который также появляется форма 2.

Есть событие формы 2 - On_Click. Так вот если форма 2 запущена с помощью батона формы 1, то по On_Click выполняем Действие1. Если форма 2 запущена с помощью батона формы 3, то по On_Click выполняем действие2.

Так больее понятно?

Аленочка тм
...
Рейтинг: 0 / 0
VBA (Excel) -> UserForm.Show
    #33352390
Just_Serg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может, стоит использовать глобальную переменную типа FromForm As Integer и приваивать перед вызовом формы FromForm=1 (если запущена из 1-й формы) и FromForm=3 (если запущена из 3-й формы)? а потом уже при обработке нажатия кнопки на 2-й форме проверять значение переменной FromForm...
...
Рейтинг: 0 / 0
VBA (Excel) -> UserForm.Show
    #33352403
Фотография Аленочка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Just_SergМожет, стоит использовать глобальную переменную типа FromForm As Integer и приваивать перед вызовом формы FromForm=1 (если запущена из 1-й формы) и FromForm=3 (если запущена из 3-й формы)? а потом уже при обработке нажатия кнопки на 2-й форме проверять значение переменной FromForm...

А это мысль, спасибо Serg
...
Рейтинг: 0 / 0
VBA (Excel) -> UserForm.Show
    #33352441
Андрей Il
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй Forms(Forms.Count - 2).Name . У меня работает.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / VBA (Excel) -> UserForm.Show
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]