Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/53: Рейтинг темы: голосов - 53, средняя оценка - 4.53
Заблокирован
1

Обработка ошибок

23.08.2009, 17:08. Показов 10538. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Можно в одной процедуре использовать 2 раза
Visual Basic
1
On Error GoTo
соответственно для одной части кода и для другой части кода?
Если можно, то напишите как. Буду очень признательным.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.08.2009, 17:08
Ответы с готовыми решениями:

Обработка ошибок
Делаю сумму разных листов (месяцев) за текущий год Т.к. листы с начала года ещё не существуют,...

Обработка ошибок в ворде...
Вот код, который в каждой ячейке первого столбца делает левое поле равным 0 см. Если имеет место...

Обработка ошибок в каждом WorkSheet
Здравствуйте, такая ситуация обрабатываются данные в каждом WorkSheet в цикле по их количеству,...

Обработка различных ошибок в программе.
Есть прога. Работает хорошо, НО: из-за всяких юзеров иногда возникают ошибки (разных категорий)...

2
1161 / 288 / 23
Регистрация: 28.09.2008
Сообщений: 553
23.08.2009, 23:33 2
Можно!
Можно так
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
On Error GoTo err1
'включаем первую обработку
'создаём исключение
On Error GoTo 0
'отключаем её
On Error GoTo err2
'включаем вторую обработку
'создаём исключение
Exit Sub
'выход из процедуры
err1:
    MsgBox Err.Description
'обрабатываем первое исключение
Exit Sub
'выход из процедуры
err2:
    MsgBox Err.Description
'обрабатываем второе исключение
Но зачем?
Можно и в одной метке обработать несколько ошибок
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
On Error GoTo errLabel
Open "C:\имя_файла" For Input As 0
Exit Sub
errLabel:
Select Case Err.Number
...
Case 52
    MsgBox "Неправильный дискриптор файла"
Case 53
    MsgBox "Файл не найден"
...
Case Else
    MsgBox "Другая ошибка"
End Select
0
Заблокирован
24.08.2009, 20:29  [ТС] 3
Вот конкретный пример:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Sub HeaderCopy()
On Error GoTo footercopy
Selection.HomeKey Unit:=wdStory
    ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
    Do
    Selection.WholeStory
    Selection.Copy
    ActiveWindow.ActivePane.View.NextHeaderFooter
    Loop
footercopy:
    ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
    Application.Run "footercopy"
End Sub
Sub footercopy()
On Error GoTo ExitSub
ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter
    Do
    Selection.WholeStory
    Selection.Copy
    ActiveWindow.ActivePane.View.NextHeaderFooter
    Loop
ExitSub:
    ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
End Sub
Я здесь сделал вызов другого макроса, т.к. не знал, как применить обработку 2 ошибок, которые должны по-любому произойти (это является функциональностью макроса).
0
24.08.2009, 20:29
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.08.2009, 20:29
Помогаю со студенческими работами здесь

Обработка ошибок в циклических массивах
Доброго времени дня. Друзья, столкнулся с такой проблемой: В ниже приведенном коде обработчик...

Обработка ошибок в функции с возвратом результата
В функции делаю обратоку ошбок. Хочу в случае определенной ошибки вернуть заданный результат....

Обработка ошибок в VBA. Run-time error 58 (File already exists)
Здравствуйте уважаемые завсегдатаи данного форума!))) Я новичок потому прошу не слишком критично...

обработка ошибок
Привет! Я реализовываю вывод сообщений пользователю через ajax, и никак не пойму, как это сделать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru