Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.08.2010, 19:19   #1
Aent
Форумчанин
 
Аватар для Aent
 
Регистрация: 17.07.2009
Сообщений: 519
Печаль Закрытие вторичной USERFORM - глюк VBE

Наткнулся на странный глюк (или это фича ? ) EXCEL 2010
Открывается у меня пользовательская форма. Немодальная.
На ней кнопка запускающая методом show другую форму (модальную)
из этого же проекта. Если закрывать эту (вторую)форму крестом или
по Alt-F4, то если открыто (даже неактивное) окно VBE, то закрываются
обе формы. Если окно VBE закрыть - только вторая

Последний раз редактировалось Aent; 07.08.2010 в 08:13.
Aent вне форума Ответить с цитированием
Старый 06.08.2010, 19:37   #2
KL (XL)
Форумчанин
 
Аватар для KL (XL)
 
Регистрация: 04.08.2009
Сообщений: 112
По умолчанию

No repro
Может покажите файл?
KL [MVP - Microsoft Office Excel]
CPU: Intel Core 2, 2.17GHz | RAM: 3.25GB (4GB) | GPU: nVidia Quadro FX 2500M
OS: Windows 7 Ultimate x64 EN | MSO: 2010 Professional Plus x86 EN
KL (XL) вне форума Ответить с цитированием
Старый 07.08.2010, 09:15   #3
Aent
Форумчанин
 
Аватар для Aent
 
Регистрация: 17.07.2009
Сообщений: 519
По умолчанию

Цитата:
Сообщение от KL(XL)
Может покажите файл?
Разумеется. Вот пример.
Windows 7 корп. x32 рус, MS Office 2010 рус.
Вложения
Тип файла: zip UF-Bug.zip (14.3 Кб, 12 просмотров)

Последний раз редактировалось Aent; 07.08.2010 в 09:18.
Aent вне форума Ответить с цитированием
Старый 07.08.2010, 09:44   #4
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

А у меня во всех версиях Excel так. И всегда так было. Решил, что без танцев с бубном не победить и смирился.
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума Ответить с цитированием
Старый 07.08.2010, 12:12   #5
Aent
Форумчанин
 
Аватар для Aent
 
Регистрация: 17.07.2009
Сообщений: 519
По умолчанию

The_Prist, так и у меня на самом деле во всех версиях
Просто раньше не обращал внимания.
Aent вне форума Ответить с цитированием
Старый 07.08.2010, 16:01   #6
KL (XL)
Форумчанин
 
Аватар для KL (XL)
 
Регистрация: 04.08.2009
Сообщений: 112
По умолчанию

Интересно :-) В вашем файле воспроизводится, а в файле собственного изготовления - нет
Вложения
Тип файла: zip Book1.zip (14.9 Кб, 10 просмотров)
KL [MVP - Microsoft Office Excel]
CPU: Intel Core 2, 2.17GHz | RAM: 3.25GB (4GB) | GPU: nVidia Quadro FX 2500M
OS: Windows 7 Ultimate x64 EN | MSO: 2010 Professional Plus x86 EN
KL (XL) вне форума Ответить с цитированием
Старый 07.08.2010, 18:51   #7
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Сам сколько не пытался вопроизвести этот глюк - не получилось (пробовал в Excel 2003 и 2007)

В файле от Aent глюк наблюдается (сделал у себя копию этого файла "с нуля" - глюка нет)

PS: Избежать закрытия обех форм легко - надо вместо
UserForm1.Show vbModeless написать UserForm1.Show,
а в свойствах первой формы изменить свойство ShowModal на FALSE
По сути, результат будет тот же (первая форма будет открыта немодальной), но глюк в этом случае не проявляется (проверял на файле от Aent)

(добавлено)
Разобрался - глюк проявляется в любом файле, но если в VBE открыта UserForm2 (неважно, она активна, или активно окно другого VBComponent)
Как только окно с UserForm2 закрываем (редактор VBE по-прежнему открыт) - глюк исчезает.

Последний раз редактировалось EducatedFool; 07.08.2010 в 18:57.
EducatedFool вне форума Ответить с цитированием
Старый 07.08.2010, 21:52   #8
KL (XL)
Форумчанин
 
Аватар для KL (XL)
 
Регистрация: 04.08.2009
Сообщений: 112
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Сам сколько не пытался вопроизвести этот глюк - не получилось (пробовал в Excel 2003 и 2007)

В файле от Aent глюк наблюдается (сделал у себя копию этого файла "с нуля" - глюка нет)

PS: Избежать закрытия обех форм легко - надо вместо
UserForm1.Show vbModeless написать UserForm1.Show,
а в свойствах первой формы изменить свойство ShowModal на FALSE
По сути, результат будет тот же (первая форма будет открыта немодальной), но глюк в этом случае не проявляется (проверял на файле от Aent)

(добавлено)
Разобрался - глюк проявляется в любом файле, но если в VBE открыта UserForm2 (неважно, она активна, или активно окно другого VBComponent)
Как только окно с UserForm2 закрываем (редактор VBE по-прежнему открыт) - глюк исчезает.
У меня в 2010 - NO REPRO в обоих случаях, что, кстати, еще хуже.
KL [MVP - Microsoft Office Excel]
CPU: Intel Core 2, 2.17GHz | RAM: 3.25GB (4GB) | GPU: nVidia Quadro FX 2500M
OS: Windows 7 Ultimate x64 EN | MSO: 2010 Professional Plus x86 EN
KL (XL) вне форума Ответить с цитированием
Старый 07.08.2010, 23:48   #9
Aent
Форумчанин
 
Аватар для Aent
 
Регистрация: 17.07.2009
Сообщений: 519
По умолчанию

Цитата:
Сообщение от EducatedFool
Избежать закрытия обех форм легко - надо вместо
UserForm1.Show vbModeless написать UserForm1.Show,
а в свойствах первой формы изменить свойство ShowModal на FALSE
Это у меня не помогает. Помогает, как вы справедливо заметили, закрытие UserForm2.
HO! В файле, выложенном KL (XL), глюк у меня не воспроизводится и при открытой и активной в VBE UserForm2.
Т.е всё всегда нормально в том числе и после пересохранения файла KL (XL) из формата xlsm в xls.
Похоже всё ещё более хитро. Глюк проявляется после попытки размещения на UserForm2 любого контрола.
Я разместил на UserForm2 CommandButton и тут же удалил его без сохранения файла.
Но после этой операции глюк стал проявляться и в "потерявшей девственность" UserForm2 из файла KL (XL).
(Конечно при UserForm2 открытой в VBE).

Последний раз редактировалось Aent; 07.08.2010 в 23:53.
Aent вне форума Ответить с цитированием
Старый 08.08.2010, 00:08   #10
KL (XL)
Форумчанин
 
Аватар для KL (XL)
 
Регистрация: 04.08.2009
Сообщений: 112
По умолчанию

Цитата:
Сообщение от Aent Посмотреть сообщение
Это у меня не помогает. Помогает, как вы справедливо заметили, закрытие UserForm2.
HO! В файле, выложенном KL (XL), глюк у меня не воспроизводится и при открытой и активной в VBE UserForm2.
Т.е всё всегда нормально в том числе и после пересохранения файла KL (XL) из формата xlsm в xls.
Похоже всё ещё более хитро. Глюк проявляется после попытки размещения на UserForm2 любого контрола.
Я разместил на UserForm2 CommandButton и тут же удалил его без сохранения файла.
Но после этой операции глюк стал проявляться и в "потерявшей девственность" UserForm2 из файла KL (XL).
(Конечно при UserForm2 открытой в VBE).
Вот теперь REPRO
KL [MVP - Microsoft Office Excel]
CPU: Intel Core 2, 2.17GHz | RAM: 3.25GB (4GB) | GPU: nVidia Quadro FX 2500M
OS: Windows 7 Ultimate x64 EN | MSO: 2010 Professional Plus x86 EN
KL (XL) вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
userform в vba Юлия1717 Помощь студентам 0 15.03.2010 14:54
VBA (UserForm) Zhene4ka2607 Помощь студентам 2 08.06.2009 16:59
2 вопроса по UserForm tolikman Microsoft Office Excel 4 25.11.2008 22:50
Помогите с UserForm Maxx Microsoft Office Excel 4 12.11.2008 11:37