Здравствуйте! Подскажите, пожалуйста! Можно ли сделать так, чтоб при возникновении ошибки в любом из 5 модулей и нажатии на Debug происходило все стандартно - мы идем в код на строку с ошибкой! А при нажатии End - было не завершение кода, а полный выход из Экселя, т.е. application.quit ?
Спасибо!
Здравствуйте! Подскажите, пожалуйста! Можно ли сделать так, чтоб при возникновении ошибки в любом из 5 модулей и нажатии на Debug происходило все стандартно - мы идем в код на строку с ошибкой! А при нажатии End - было не завершение кода, а полный выход из Экселя, т.е. application.quit ?
If Err Then If MsgBox("Завершить работу?", 36) = vbNo Then 'можно добавить 'If MsgBox(Err.Description & vbCrLf & "Завершить работу?", 36) = vbNo Then Stop Else ThisWorkbook.Save Application.Quit End If End If End Sub
[/vba]
urlchik, привет может, как-то вот так: [vba]
Код
Sub test() Dim i&
On Error Resume Next: Err.Clear i = 18 / 0
If Err Then If MsgBox("Завершить работу?", 36) = vbNo Then 'можно добавить 'If MsgBox(Err.Description & vbCrLf & "Завершить работу?", 36) = vbNo Then Stop Else ThisWorkbook.Save Application.Quit End If End If End Sub
Спасибо, но не то! Я имел ввиду пе перехват событий ошибки, а изменить действие при нажати кнопки в стандартном окне ошибки! (даже не знаю как пояснить)
On error надо размещать в каждой процедуре перед предположительным возникновением ошибки. А я спрашиваю про универсальную как-бы функцию перехватчика или изменение самого перехватчика. Ведь код стандартного перехватчика мы нигде не прописываем, но на ошибки он реагирует - вот там бы и изменить действие кнопки End!
Спасибо, но не то! Я имел ввиду пе перехват событий ошибки, а изменить действие при нажати кнопки в стандартном окне ошибки! (даже не знаю как пояснить)
On error надо размещать в каждой процедуре перед предположительным возникновением ошибки. А я спрашиваю про универсальную как-бы функцию перехватчика или изменение самого перехватчика. Ведь код стандартного перехватчика мы нигде не прописываем, но на ошибки он реагирует - вот там бы и изменить действие кнопки End!