Yan Pelletier
May 9th, 2001, 10:25 AM
I have a serious problem with th error handling prcess. For a reason I can't understand, if you raise an error in a Form, this error don't go down on the calling procedure. This exemple will help you understand what I mean :
MODULE1.MOD
option Explicit
Sub Main()
on error GoTo Err_Module1_Main
from1.Show
Exit Sub
Err_Module1_Main:
MsgBox Err.Number & vbCrLf & Err.Source & vbCrLf & Err.Description
End Sub
FORM1.FRM
option Explicit
private Sub Form_Load()
Dim intVar(2) as Integer
on error GoTo Err_Form1_Form_Load
intVar(-1) = 3
Exit Sub
Err_Form1_Form_Load:
Err.Raise Err.Number, Err.Source, Err.Description
End Sub
As you can see, the entry point of my program is Sub Main(). In this procedure, I'm loading a Form called Form1. There is an intentionnal "Subscript out of range" error in the Form_Load of Form1. The "On Error" statement being in the codem the error is traped, and we end up in the "Err_Form1_Form_Load:" section. In this section, I do an "Err.Raise" which should be sent to the "Sub Main()" of MODULE1.MOD, but it dosen't.
As far as I know, when raise errors in VB this error should go down on the calling procedure... Why isn't it doing so?
Please help me!
MODULE1.MOD
option Explicit
Sub Main()
on error GoTo Err_Module1_Main
from1.Show
Exit Sub
Err_Module1_Main:
MsgBox Err.Number & vbCrLf & Err.Source & vbCrLf & Err.Description
End Sub
FORM1.FRM
option Explicit
private Sub Form_Load()
Dim intVar(2) as Integer
on error GoTo Err_Form1_Form_Load
intVar(-1) = 3
Exit Sub
Err_Form1_Form_Load:
Err.Raise Err.Number, Err.Source, Err.Description
End Sub
As you can see, the entry point of my program is Sub Main(). In this procedure, I'm loading a Form called Form1. There is an intentionnal "Subscript out of range" error in the Form_Load of Form1. The "On Error" statement being in the codem the error is traped, and we end up in the "Err_Form1_Form_Load:" section. In this section, I do an "Err.Raise" which should be sent to the "Sub Main()" of MODULE1.MOD, but it dosen't.
As far as I know, when raise errors in VB this error should go down on the calling procedure... Why isn't it doing so?
Please help me!