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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.09.2012, 00:28   #1
nolte
Пользователь
 
Регистрация: 25.03.2011
Сообщений: 18
По умолчанию отмена перехода по элементам управления в форме

комбобокс или техтбокс должны быть заполнены но если двигаться по элементам кнопкой табуляции то элименты остаются пустыми.
пробовал BoxProj.MatchRequired = True если значение не из списка ругается а если сразу табуляцию без ввода данных проходит, и так пробовал
If BoxSapak.Value = "" Then
BoxSapak.AutoTab = False
BoxSapak.MatchRequired = True
End If
пока ничего не выходит.
nolte вне форума Ответить с цитированием
Старый 15.09.2012, 01:08   #2
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Добавьте в код формы - это для TextBox1
Код:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1 = "" Then
    Cancel = True
    MsgBox "Введите что-нибудь!"
End If
End Sub
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 15.09.2012, 02:30   #3
nolte
Пользователь
 
Регистрация: 25.03.2011
Сообщений: 18
По умолчанию

огромное спасибо все чудно работает.
nolte вне форума Ответить с цитированием
Старый 15.09.2012, 09:19   #4
nolte
Пользователь
 
Регистрация: 25.03.2011
Сообщений: 18
По умолчанию

да видать торможу. если ничего нет в процедуре после этого то все отлично но вот если есть код дополнительный то необходимо зациклить остановку
Do While .... Loop не работает
nolte вне форума Ответить с цитированием
Старый 15.09.2012, 10:41   #5
nolte
Пользователь
 
Регистрация: 25.03.2011
Сообщений: 18
По умолчанию

решил с помощью дополнительной формы
If TextBox1.Value="" Then UserForm2.Show
если есть еще какие то решения этой проблемы
nolte вне форума Ответить с цитированием
Старый 15.09.2012, 11:28   #6
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

а что решает всплывшая форма2?
есть золотое правило - ввод данных пользователем надо контролировать (проверять на корректность). можно проверить до закрытия формы и решить закрывать ее или нет, можно проверить после и решить можно этими данными пользоваться или нет, предупредить пользователя, что он внес некорректные данные или нет.
только Вы сами можете решить, как должна вести себя форма в таких ситуациях.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 15.09.2012, 11:46   #7
nolte
Пользователь
 
Регистрация: 25.03.2011
Сообщений: 18
По умолчанию

всплывающая форма не дает остаться пустым текстбоксу и соответственно ячейке в которую этот текстбокс вносит значения.
как говорил выше "Cancel=True" работает если за этой конструкцией нет кода то бишь если
... код ...
Cancel=True
End If
End Sub
все изюмительно, но если
...код...
Cancel=True
End If
...код1...
End Sub
то код1 начинает работать после If ну и портит всю картину
nolte вне форума Ответить с цитированием
Старый 15.09.2012, 11:51   #8
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

портит картину неправильный подход к решению задачи. собственно, почти все (только без примера кода) написано в предыдущем сообщении.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 15.09.2012, 11:54   #9
nolte
Пользователь
 
Регистрация: 25.03.2011
Сообщений: 18
По умолчанию

все мне стыдно, ларчик просто открывался, все остальное надо было продолжить после Else
огромное спасибо всем за помощь и участие
nolte вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как Вам отмена перехода летнее <> зимнее время? С.М.С Свободное общение 22 20.12.2011 12:56
Вопросы по элементам управления в VBA bag Microsoft Office Excel 1 02.05.2009 13:20
Элементы управления в форме! Rom1k06 Microsoft Office Excel 10 30.04.2009 21:33
Не могу разобраться с элементами управления на форме aRmЯn Общие вопросы по Java, Java SE, Kotlin 1 17.04.2009 01:36
Возврат управления форме при показе PopupMenu mutabor Общие вопросы Delphi 1 08.07.2008 13:43