
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
23.10.2007, 22:45:43
|
|||
|---|---|---|---|
|
|||
Обработка ошибки |
|||
|
#18+
Добрый день. Написал макрос, в котором ищу слово "цех". Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Как обрабатывать ошибку, не разрывая цикла. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.10.2007, 23:33:30
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
....оооо чорт! У меня сегодня абсолютно такой же вопрос возник!!! - маялся полдня, в итоге обошелся конструкцией Resume Next. Помогло, но этот вопрос оставил осадок на душе моей. Люди добрые, расскажите нам про обработку ошибок в цикле! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.10.2007, 10:41:47
|
|||
|---|---|---|---|
|
|||
Обработка ошибки |
|||
|
#18+
Я бы переделала код так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. А вообще по поводу ошибок возможны два варианта: 1. Игнорируем ошибку и разрешаем VBA продолжить выполнение программы (On Error Resume Next) 2. Переходим к разделу кода для обработки ошибок. (On Error GoTo МЕТКА). (Как у вас и было в примере) Оператор On Error GoTo 0 восстанавливает нормальную обработку ошибок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.10.2007, 10:57:10
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
1. Код: plaintext 1. 2. 3. не надо так делать (много проблем может быть) надо так Код: plaintext 1. 2. также и Код: plaintext 1. Код: plaintext Код: plaintext наверно предполагалось так Код: plaintext 1. Рекомендую опустить этот параметр (по умолчанию он все равно false) Код: plaintext 1. 2. Проверьте переменную на Nothing, прежде чем обращаться к ней Код: plaintext 1. 2. 3. 4. 5. 6. нет смысла организововать цикл в таком виде как у вас поскольку есть метод "FindNext" попробуйте разобраться в нем Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.10.2007, 11:41:05
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
Хм... а про обработчики ошибок в цикле так никто ничего и не сказал :/ Почему вот так у меня не работает? Совсем запутался... Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.10.2007, 16:47:00
|
|||
|---|---|---|---|
|
|||
Обработка ошибки |
|||
|
#18+
LETME Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.10.2007, 09:03:36
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
lena_###, спасибо! Однако, это не совсем то. Хотелось бы понять - почему в моем примере при втором проходе в цикле не срабатывает On Error GoTo ErrorData. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.10.2007, 12:02:37
|
|||
|---|---|---|---|
|
|||
Обработка ошибки |
|||
|
#18+
LETME Хотелось бы понять - почему в моем примере при втором проходе в цикле не срабатывает On Error GoTo ErrorData. У меня тоже были вопросы на эту тему, но поскольку так заложено, что при втором проходе не срабатывает, то я обычно это избегаю так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.10.2007, 17:49:10
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
LETMElena_###, спасибо! Однако, это не совсем то. Хотелось бы понять - почему в моем примере при втором проходе в цикле не срабатывает On Error GoTo ErrorData.Потому что обработка ошибки не рекурсивна. Ошибка случившаяся в обработчике ошибки не перехватывается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.10.2007, 17:51:57
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
Chelovek TapokУ меня тоже были вопросы на эту тему, но поскольку так заложено, что при втором проходе не срабатывает, то я обычно это избегаю так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 13:28:24
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
LETMEХм... а про обработчики ошибок в цикле так никто ничего и не сказал :/ Почему вот так у меня не работает? Совсем запутался... Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. есть выход Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 13:30:55
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
хммм... а это действительно рабочий вариант! vkodor, спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 13:43:21
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 13:58:17
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
To LeonM можно пояснить To Do - это что? Вы уверены что это VBA? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 14:05:46
|
|||
|---|---|---|---|
|
|||
Обработка ошибки |
|||
|
#18+
White Owl Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Полностью согласен, но я писал включение/выключение обработчика в цикле из расчета, что там может быть еще какая-либо обработка, игнорирование ошибок которой недопустимо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 14:57:34
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
vkodorTo LeonM можно пояснить To Do - это что? Вы уверены что это VBA? )) vkodor, Вы это серьезно спрашивате??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 15:24:32
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
LETME vkodorTo LeonM можно пояснить To Do - это что? Вы уверены что это VBA? )) vkodor, Вы это серьезно спрашивате??? Вообще-то да. Открыл Excel открыл VBA скопировал код строка Код: plaintext открыл ворд ... тоже самое открыл Access, PowerPoint тоже самое дальше проверять не стал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 15:33:52
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
vkodor LETME vkodorTo LeonM можно пояснить To Do - это что? Вы уверены что это VBA? )) vkodor, Вы это серьезно спрашивате??? Вообще-то да. Открыл Excel открыл VBA скопировал код строка Код: plaintext открыл ворд ... тоже самое открыл Access, PowerPoint тоже самое дальше проверять не стал На этом месте должны стоять Ваши операторы. Номера обрабатываемых ошибок Nerr1, Nerr2 и т.п. тоже нужно подставить. Показан принцип. Посмотрите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 15:37:24
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
:) ну конечно она будет светится. Автор сообщения подразумевал отметить этим выражением, что в этом месте нужно/можно что- либо делать/выполнять - something to do. Можно было закомментировать конечно строку, вероятно просто забыл... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 15:37:47
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
Ой... опоздал) Простите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 16:12:23
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
Мда... Спасибо. Плохо когда незнал как, и забыл прочитать по ангельски. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.10.2007, 16:27:22
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
case 0 - нормальное завершение - забыли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.10.2007, 21:58:00
|
|||
|---|---|---|---|
|
|||
Обработка ошибки |
|||
|
#18+
Спасибо всем кто откликнулся. Особенно vkodor за "FindNext". Как я понял мне можно обойтись без обработки ошибки, но все таки хотел для себя разобраться с сочетанием цикла While-Wend и логикой if. Например когда я делаю такой макрос Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
30.10.2007, 23:48:01
|
|||
|---|---|---|---|
Обработка ошибки |
|||
|
#18+
vad-anatolijто Ехель ругается на то, что я использую Wend без While. Т.е. он первую часть цикла не видит. Что я делаю не так.Нарушаешь принцип структурного программирования. Возьми школьный учебник информатики и прочитай его. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=61&tablet=1&tid=2182002]: |
0ms |
get settings: |
10ms |
get forum list: |
24ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
75ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
1ms |
| others: | 234ms |
| total: | 429ms |

| 0 / 0 |
