Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Как обойти ошибку при вводе неправильного пароля - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как обойти ошибку при вводе неправильного пароля (Макросы/Sub)
Как обойти ошибку при вводе неправильного пароля
Skip Дата: Суббота, 28.01.2017, 15:05 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 28
Репутация: 1 ±
Замечаний: 0% ±

Excel 2003
Я не силен в макросах, осваиваю эту тему, помогите пож.
Включена защита листа Еxcel (2003) через "Сервис", написан макрос на отключение защиты, всплывает окно для ввода пароля, если вводишь пароль правильно проблем нет, но если не правильно всплывает окно
Run-time error 1004 Не верный пароль.
Пример файла прикреплен.
Как обойти эту ошибку?
К сообщению приложен файл: 4513276.xls (24.5 Kb)


Сообщение отредактировал Skip - Суббота, 28.01.2017, 17:30
 
Ответить
СообщениеЯ не силен в макросах, осваиваю эту тему, помогите пож.
Включена защита листа Еxcel (2003) через "Сервис", написан макрос на отключение защиты, всплывает окно для ввода пароля, если вводишь пароль правильно проблем нет, но если не правильно всплывает окно
Run-time error 1004 Не верный пароль.
Пример файла прикреплен.
Как обойти эту ошибку?

Автор - Skip
Дата добавления - 28.01.2017 в 15:05
wild_pig Дата: Суббота, 28.01.2017, 16:39 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 517
Репутация: 97 ±
Замечаний: 0% ±

2003, 2013
Вы бы код, а лучше файл с кодом показали.


Сообщение отредактировал wild_pig - Суббота, 28.01.2017, 16:40
 
Ответить
СообщениеВы бы код, а лучше файл с кодом показали.

Автор - wild_pig
Дата добавления - 28.01.2017 в 16:39
Michael_S Дата: Суббота, 28.01.2017, 17:47 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
Добавьте строчку [vba]
Код
    On Error Resume Next
    ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False

[/vba]


Сообщение отредактировал Michael_S - Суббота, 28.01.2017, 17:47
 
Ответить
СообщениеДобавьте строчку [vba]
Код
    On Error Resume Next
    ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False

[/vba]

Автор - Michael_S
Дата добавления - 28.01.2017 в 17:47
Skip Дата: Суббота, 28.01.2017, 17:58 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 28
Репутация: 1 ±
Замечаний: 0% ±

Excel 2003
Добавьте строчку

On Error Resume Next
ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False



Спасибо.


Сообщение отредактировал Skip - Суббота, 28.01.2017, 18:08
 
Ответить
Сообщение
Добавьте строчку

On Error Resume Next
ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False



Спасибо.

Автор - Skip
Дата добавления - 28.01.2017 в 17:58
_Boroda_ Дата: Суббота, 28.01.2017, 18:03 | Сообщение № 5
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Я б добавил еще обработчик ошибки
[vba]
Код
Sub Редактировать()
    On Error Resume Next
    ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False
    If Err.Number Then MsgBox "Неверный пароль"
End Sub
[/vba]
К сообщению приложен файл: 4513276_1.xls (34.5 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеЯ б добавил еще обработчик ошибки
[vba]
Код
Sub Редактировать()
    On Error Resume Next
    ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False
    If Err.Number Then MsgBox "Неверный пароль"
End Sub
[/vba]

Автор - _Boroda_
Дата добавления - 28.01.2017 в 18:03
Skip Дата: Суббота, 28.01.2017, 18:09 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 28
Репутация: 1 ±
Замечаний: 0% ±

Excel 2003
Я б добавил еще обработчик ошибки

Sub Редактировать()
On Error Resume Next
ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False
If Err.Number Then MsgBox "Неверный пароль"
End Sub

Большое спасибо за помощь, работает как надо, буду адаптировать к полному коду.
А как написать прекратить выполнение макроса если пароль неверен, продолжить если правильный, а то получается при неверном пароле следующие строки всё же выполняются?


Сообщение отредактировал Skip - Суббота, 28.01.2017, 19:42
 
Ответить
Сообщение
Я б добавил еще обработчик ошибки

Sub Редактировать()
On Error Resume Next
ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False
If Err.Number Then MsgBox "Неверный пароль"
End Sub

Большое спасибо за помощь, работает как надо, буду адаптировать к полному коду.
А как написать прекратить выполнение макроса если пароль неверен, продолжить если правильный, а то получается при неверном пароле следующие строки всё же выполняются?

Автор - Skip
Дата добавления - 28.01.2017 в 18:09
bmv98rus Дата: Суббота, 28.01.2017, 21:34 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4107
Репутация: 768 ±
Замечаний: 0% ±

Excel 2013/2016
Skip,

В зависисмости от того что вам надо сделать EXIT .... (https://msdn.microsoft.com/en-us/library/office/gg251570(v=office.15).aspx странно , эти ссылки криво отображаютяся усли использовать коды) . Ну и естественно внутри констукции IF THEN END IF

Также можно GOTO (https://msdn.microsoft.com/en-us/library/office/gg251368(v=office.15).aspx) хотя в эпоху моей молодости использование таких переходов считалось плохим стилем. Однако если его использовать, то лучше уж в, вашем случае, например так[vba]
Код
Sub Редактировать()
On Error Goto err1
ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False
....... ' основной код
exit sub
err1:
MsgBox "Неверный пароль"
End Sub
[/vba]


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Воскресенье, 29.01.2017, 09:59
 
Ответить
СообщениеSkip,

В зависисмости от того что вам надо сделать EXIT .... (https://msdn.microsoft.com/en-us/library/office/gg251570(v=office.15).aspx странно , эти ссылки криво отображаютяся усли использовать коды) . Ну и естественно внутри констукции IF THEN END IF

Также можно GOTO (https://msdn.microsoft.com/en-us/library/office/gg251368(v=office.15).aspx) хотя в эпоху моей молодости использование таких переходов считалось плохим стилем. Однако если его использовать, то лучше уж в, вашем случае, например так[vba]
Код
Sub Редактировать()
On Error Goto err1
ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False
....... ' основной код
exit sub
err1:
MsgBox "Неверный пароль"
End Sub
[/vba]

Автор - bmv98rus
Дата добавления - 28.01.2017 в 21:34
Skip Дата: Суббота, 28.01.2017, 23:17 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 28
Репутация: 1 ±
Замечаний: 0% ±

Excel 2003
Sub Редактировать()
On Error Goto err1
ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False
....... ' основной код
exit sub
err1:
MsgBox "Неверный пароль"
End Sub


Огромнейшее спасибо! С Вашей помощью решились все проблемы.
Целый день сидел "колдовал" над этим паролем.
Очень Вам благодарен, СПАСИБО!
 
Ответить
Сообщение
Sub Редактировать()
On Error Goto err1
ActiveSheet.Protect DrawingObjects:=False, Contents:=False, Scenarios:=False
....... ' основной код
exit sub
err1:
MsgBox "Неверный пароль"
End Sub


Огромнейшее спасибо! С Вашей помощью решились все проблемы.
Целый день сидел "колдовал" над этим паролем.
Очень Вам благодарен, СПАСИБО!

Автор - Skip
Дата добавления - 28.01.2017 в 23:17
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Как обойти ошибку при вводе неправильного пароля (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!