![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Пользователь
Регистрация: 16.07.2009
Сообщений: 29
|
![]()
Всем доброго дня!
Посмотрите в чем у меня ошибка. При нажатии cancel вылетает рантаймовская 13 ошибка. Private Sub CallUserform3_Click() 'select department via password beg: psw = InputBox("Введите пароль вашего цеха") Select Case psw Case 1 dept = "ЦМИ" Sheets("lists").Range("b2..b5").Nam e = "ceh" Case 2 dept = "ЦСИ" Sheets("lists").Range("c2..c5").Nam e = "ceh" Case 3 dept = "ЦЗИ" Sheets("lists").Range("d2..d5").Nam e = "ceh" Case Else GoTo beg End Select UserForm5.Caption = dept UserForm5.Calendar.Value = Date UserForm3.Hide UserForm5.lbl_dept_name = dept UserForm5.Show End Sub Спасибо. |
![]() |
![]() |
![]() |
#2 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]()
Может, переменная psw определена как числовая?
Определите переменную как String или Variant - и ошибки не будет. Цитата:
Даже не предполагал, что так можно задавать диапазон ячеек. Похоже, в Microsoft предусмотрели все возможные варианты записи адреса диапазона... (точек, как выяснилось, можно ставить сколько угодно)
__Полезные надстройки для Excel. Парсинг сайтов и файлов.
![]() Последний раз редактировалось EducatedFool; 01.09.2010 в 17:32. |
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 16.07.2009
Сообщений: 29
|
![]()
Спасибо. Но проблема в другом. Ошибка выскакивает при отказе от ввода пароля прп нажатии кнопки cancel. Так код работает и ошибок не выдает. Если пишу в код обработчика ошибок, то получаю зацикливание процедуры, то есть пока код не введешь будешь тыкакаться в кнопку. Тоже не совсем гут.
|
![]() |
![]() |
![]() |
#4 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
![]() Цитата:
Скажите, как должно работать, - сделаем. Попробуйте так: Код:
|
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 16.07.2009
Сообщений: 29
|
![]()
Я вроде бы понятно пишу, проблема возникает при отказе от ввода пароля в inputbox, то есть пользователь вместо "ОК" нажимает кнопку "cancel". В этот момент вылетает ошибка. Ее и нужно победить, все остальное работает. Диалог ОК-cancel это стандартная VBA панелька. Почему ее вырубает ВОТ ВОПРОС.
|
![]() |
![]() |
![]() |
#6 |
Участник клуба
Регистрация: 17.07.2009
Сообщений: 1,088
|
![]()
А так:
Код:
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru |
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 16.07.2009
Сообщений: 29
|
![]()
Не помогло....
|
![]() |
![]() |
![]() |
#8 |
Участник клуба
Регистрация: 17.07.2009
Сообщений: 1,088
|
![]()
Правда? У Вас переменной psw какой тип данных назначен? Что за ошибка? На какой строке ошибка?
Может имеет смысл так сделать? Код:
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru |
![]() |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 24.03.2010
Сообщений: 349
|
![]()
А в других местах этого же файла InputBox работает нормально? Если нет, то попробуй в другой книге.
Если в другой книге работает, значит что-то у тебя с "References", а если не работает, то дело серьёзно!
Нет нерешаемых задач - есть недостаток времени и данных!
|
![]() |
![]() |
![]() |
#10 |
Пользователь
Регистрация: 16.07.2009
Сообщений: 29
|
![]()
The_Prist большой респект. Удалось обойти! СПАСИБО!!!!
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
форма выдает ошибку | serikov | Microsoft Office Excel | 4 | 01.07.2010 23:18 |
Выдает ошибку( | И.А.А. | Общие вопросы C/C++ | 1 | 21.05.2010 19:10 |
выдает ошибку! | maksim_serg | Microsoft Office Word | 3 | 20.04.2010 04:19 |
Макрос выдает ошибку | Romuald | Microsoft Office Excel | 2 | 15.04.2009 22:42 |
ADOQuery - выдает ошибку | kiber0net0 | Общие вопросы Delphi | 2 | 02.09.2008 19:49 |