Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
hi experts,
i have a simple error handling question. i have the following code: private sub test() on error goto errorhandling my stuff exit sub errorhandling: My error end sub Here's my question: if in 'my stuff' i have, next to some calculation code, a module i want tot execute, do i have to put the 'on errror' codelines also in the module is is it enough to have it in the main code above? Thanks, Pierre -- Message posted via OfficeKB.com http://www.officekb.com/Uwe/Forums.a...mming/200511/1 |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi Pierre,
Pierre via OfficeKB.com wrote: private sub test() on error goto errorhandling my stuff exit sub errorhandling: My error end sub Here's my question: if in 'my stuff' i have, next to some calculation code, a module i want tot execute, do i have to put the 'on errror' codelines also in the module is is it enough to have it in the main code above? It depends on what you want the code to do. By default, if you call a function or subroutine, and it has no error handling of its own, the error will be "passed up" to the calling code. So the error handler for this sub "test" will catch the error. If the other function or subroutine does have error handling, it will catch the error, and you can decide what to do with it there. BTW, it's best to use a Resume statement after you trap an error, as the next error your code encounters will be untrappable if you don't. Here's what I typically do: Sub Test() On Error GoTo ErrHandler '/ code here ExitRoutine: '/ clean up here (set object vars to Nothing, etc) Exit Sub ErrHandler: '/ handle error here if needed Resume ExitRoutine End Sub -- Regards, Jake Marx www.longhead.com [please keep replies in the newsgroup - email address unmonitored] |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Thanks Jake,
This was a big help ! Pierre Jake Marx wrote: Hi Pierre, private sub test() on error goto errorhandling [quoted text clipped - 10 lines] want tot execute, do i have to put the 'on errror' codelines also in the module is is it enough to have it in the main code above? It depends on what you want the code to do. By default, if you call a function or subroutine, and it has no error handling of its own, the error will be "passed up" to the calling code. So the error handler for this sub "test" will catch the error. If the other function or subroutine does have error handling, it will catch the error, and you can decide what to do with it there. BTW, it's best to use a Resume statement after you trap an error, as the next error your code encounters will be untrappable if you don't. Here's what I typically do: Sub Test() On Error GoTo ErrHandler '/ code here ExitRoutine: '/ clean up here (set object vars to Nothing, etc) Exit Sub ErrHandler: '/ handle error here if needed Resume ExitRoutine End Sub -- Message posted via OfficeKB.com http://www.officekb.com/Uwe/Forums.a...mming/200511/1 |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Error Handling | Excel Programming | |||
Error Handling | Excel Programming | |||
Error handling with a handling routine | Excel Programming | |||
Error handling | Excel Programming | |||
Error Handling | Excel Programming |