Страницы: 1
RSS
Возобновление активности UserForm
 
Всем доброго дня,  
 
Есть форма какого-нибудь расчета, и есть пожелание пользователя не схлопывать форму, а оставлять на экране без фокуса на ней, продолжая работу на листе. И при желании возобновить расчет на форме простым кликом мыши. Как это работает можно увидеть на форме "Поиск", встроенный в Excel.  
 
Вопрос: Как это реализовать средствами VBA?  
 
Владимир.
 
Вызываем форму userform1.show 0
 
{quote}{login=Kilrex}{date=29.09.2009 01:41}{thema=}{post}Вызываем форму userform1.show 0{/post}{/quote}  
 
Откуда вызываем? В каком событии обрабатывать левый клик мыши?
 
{quote}{login=VovaK}{date=29.09.2009 01:49}{thema=Re: }{post}{quote}{login=Kilrex}{date=29.09.2009 01:41}{thema=}{post}Вызываем форму userform1.show 0{/post}{/quote}  
 
Откуда вызываем? В каком событии обрабатывать левый клик мыши?{/post}{/quote}  
когда ты первый раз её вызываешь, её даеться признак модального окна, т.е. окно не блокирует действия на листе книги.
 
Приятно видеть знакомые лица, приветик.  
 
Это теплее, увы еще не обрел эти знания, где искать признак, чтобы сделать его модальным?
 
{quote}{login=VovaK}{date=29.09.2009 02:14}{thema=}{post}Приятно видеть знакомые лица, приветик.  
 
Это теплее, увы еще не обрел эти знания, где искать признак, чтобы сделать его модальным?{/post}{/quote}  
привет.  
признак это  "0"   нолик :)  
 
ты в коде смотри когда форму вызываешь, в конце допиши 0.  
было  
userform1.show  
 
стало  
userform1.show 0
 
Влад, ноль - это и есть то что нужно :-) .Show 0
 
Спасибо ребята просветили.  
 
Век живи век учись...
 
В основной UserForm есть CommandButton_Отмена.  
 
После "Отмены" удаляется последняя запись, произведённая с помощью этой UserForm.  
Пользователи то ли с испуга, то ли от любопытства нажимают "Отмену" и остаются без результата пусть не продолжительной, но работы.  
Я хочу добавить предупреждение - UserForm_ДаНет:  
"Вы подтверждаете удаление? Точно-точно-переточно?" :-)  
В случае "Да" - всё стирается. С этим проблем не возникло.  
А как сделать возврат к основной UserForm в случае "Нет"?  
Меня заклинило и не получается :-/
 
ну а что у вас в CommandButton_Отмена написано?  
 
 
просто не выполняйте этот код, сразу выходите..
Живи и дай жить..
 
P.S. У меня Справка в программе аглицкая, а я по-буржуински очень плохо понимаю.
 
{quote}{login=слэн}{date=21.10.2009 01:19}{thema=}{post}ну а что у вас в CommandButton_Отмена написано?  
просто не выполняйте этот код, сразу выходите..{/post}{/quote}  
В CommandButton_Отмена написан показ Предупреждения  
Private Sub CommandButton_Otmena_Click()  
UF_YesNo.Show  
End Sub  
 
В предупреждении Соответственно:  
Private Sub CommandButton_Yes_Click()  
'Удаление последней записи  
Rows(Cells(Rows.Count, 1).End(xlUp).Row).EntireRow.Select  
Selection.ClearContents  
End  
End Sub  
 
А в случае Нет пока ничего не написано.  
Private Sub CommandButton_No_Click()  
 
End Sub
 
Названия у меня правильные и везде одинаковые.  
Это для форума расшифровала по-разному.
 
Вам нужен MsgBox c двумя кнопками ДА и НЕТ?
 
так ничего и не пишите. Оно само вернется в первую форму. можете даже вообще удалить подпрограмму No_Click
Живи и дай жить..
 
{quote}{login=Юрий М}{date=21.10.2009 01:44}{thema=}{post}Вам нужен MsgBox c двумя кнопками ДА и НЕТ?{/post}{/quote}  
Совершенно верно.  
А как он пишется?
 
{quote}{login=слэн}{date=21.10.2009 01:47}{thema=}{post}так ничего и не пишите. Оно само вернется в первую форму. можете даже вообще удалить подпрограмму No_Click{/post}{/quote}  
Если удалить подпрограмму No_Click, то при клике на CommandButton_No ничего не происходит. А мне нужно, что UserForm предупреждения закрылась.
 
{quote}{login=Жаба}{date=21.10.2009 01:56}{thema=Re: }{post}{quote}{login=Юрий М}{date=21.10.2009 01:44}{thema=}{post}Вам нужен MsgBox c двумя кнопками ДА и НЕТ?{/post}{/quote}Совершенно верно.А как он пишется?{/post}{/quote}  
Private Sub CommandButton1_Click()  
  If MsgBox("Удалять?", vbYesNo) = vbNo Then  
     Exit Sub  
  Else  
     'Ваш код на удаление  
  End If  
End Sub
 
{quote}{login=Жаба}{date=21.10.2009 01:56}{thema=Re: }{post}{quote}{login=Юрий М}{date=21.10.2009 01:44}{thema=}{post}Вам нужен MsgBox c двумя кнопками ДА и НЕТ?{/post}{/quote}  
Совершенно верно.  
А как он пишется?{/post}{/quote}  
Нашла!  
Спасибо за наведённую мысль:)
 
{quote}{login=Юрий М}{date=21.10.2009 02:02}{thema=Re: Re: }{post}{quote}{login=Жаба}{date=21.10.2009 01:56}{thema=Re: }{post}{quote}{login=Юрий М}{date=21.10.2009 01:44}{thema=}{post}Вам нужен MsgBox c двумя кнопками ДА и НЕТ?{/post}{/quote}Совершенно верно.А как он пишется?{/post}{/quote}  
Private Sub CommandButton1_Click()  
  If MsgBox("Удалять?", vbYesNo) = vbNo Then  
     Exit Sub  
  Else  
     'Ваш код на удаление  
  End If  
End Sub{/post}{/quote}  
О! Так даже удобней.  
Спасибо:)
 
"Наведённая мысль" - мощно задвинули :-)
 
{quote}{login=Юрий М}{date=21.10.2009 02:04}{thema=}{post}"Наведённая мысль" - мощно задвинули :-){/post}{/quote}  
За то верно по сути:)  
Я учусь в обнимку с форумом и самоучителем (который читаю через две страницы), поэтому мой Капитан Очевидность косой на один глаз.  
Логично же использовать MSgBox, но сама не сообразила. Меня именно навели на мысль о нём.  
:-)
 
{quote}{login=Жаба}{date=21.10.2009 01:59}{thema=Re: }{post}{quote}{login=слэн}{date=21.10.2009 01:47}{thema=}{post}так ничего и не пишите. Оно само вернется в первую форму. можете даже вообще удалить подпрограмму No_Click{/post}{/quote}  
Если удалить подпрограмму No_Click, то при клике на CommandButton_No ничего не происходит. А мне нужно, что UserForm предупреждения закрылась.{/post}{/quote}  
 
так по yes  тоже не закрывается, напишите так:  
Private Sub CommandButton_Otmena_Click()  
UF_YesNo.Show  
unload UF_YesNo  
End Sub
Живи и дай жить..
 
так по yes  тоже не закрывается, напишите так:  
Private Sub CommandButton_Otmena_Click()  
UF_YesNo.Show  
unload UF_YesNo  
End Sub
Живи и дай жить..
 
Цитата: "Я учусь в обнимку с форумом и самоучителем..."  
А вот так: "Я учусь в обнимку с учителем..." - процесс пошёл бы быстрее :-)
 
{quote}{login=Юрий М}{date=21.10.2009 01:19}{thema=}{post}А вот так: "Я учусь в обнимку с учителем..." - процесс пошёл бы быстрее :-){/post}{/quote}  
В обнимку с учителем получится намноооого дольше.  
Отвлекаться буду:)
 
{quote}{login=Юрий М}{date=21.10.2009 02:21}{thema=}{post}Цитата: "Я учусь в обнимку с форумом и самоучителем..."  
А вот так: "Я учусь в обнимку с учителем..." - процесс пошёл бы быстрее :-){/post}{/quote}  
Интересно Юрий на кого Вы намекаете ....
 
:-) на учителя, конечно. А уж как его зовут - неважно.
Страницы: 1
Читают тему
Наверх