Collabora Office 24.04 Hjælp
Brug VBA-objektet Err til rejse eller håndtere afviklingsfejl.
Err er et indbygget VBA-globalt objekt, som tillader:
til at sætte flag ved prædefinerede fejl
at smide brugerdefinerede undtagelser
finde navnet på den rutine, der forårsager fejlen
at beskrive fejlen og mulige løsninger
VBA-objektet Err har følgende egenskaber og metoder:
Err.Description As String
Egenskaben Description angiver fejlens natur. Description opregner de forskellige grunde, der kan udløse fejlen. Ideelt giver den flere fremgangsmåder som hjælp til løse problemmet og forebygge dets genopståen. Basic alias er funktionen Error for Collabora Office forfuddefinerede fejl.
Err.Number As Long
Fejlkoden er knyttet til fejlen. Objektet Errs standardegenskab er Number. Collabora Office Basics alias er funktionen Err.
Err.Source As String
Source viser navnet på den rutine, der giver fejlen Source er valgfri for bruger-definerede fejl.
Err.Clear()
Nulstiller den aktuelle fejls beskrivelse, Erl, nummer og kildeegenskaber. Collabora Office Basics alias er erklæringen Resume.
Err.Raise(Number As Long, Optional source As String, Optional description As String)
Kaster brugerdefinerede eller foruddefinerede fejl. Collabora Office Basics alias er erklæringen Error.
Number: En brugerdefineret eller foruddefineret fejlkode, der sættes.
Fejlkode-området 0-2000 er reserveret til Collabora Office Basic. Brugerdefinerede fejl kan begynde med højere værdier, for at forebygge sammenstød med kommende Collabora Office Basic udvikling.
Source: Navnet på den rutine, der udløser fejlen. Der anbefales et navn på formen "myLibrary.myModule.myProc".
Description: En beskrivelse af problemet, der ledte til stop af den kørende proces, ledsaget af de forskellige udløsende grunde til det. En detaljeret liste over de mulige fremgangsmåder, der kan lette løsningen af problemet anbefales.
Option VBASupport 1
Sub ThrowErrors
Dim aDesc As String : aDesc = Space(80)
On Local Error GoTo AlertAndExecNext
Err.Raise(91, "ThrowErrors", Error(91))
Err.Raise 2020, Description:="Dette er en tilsigtet brugerdefineret fejl…"
Err.Raise(4096, "Standard.Module1.ThrowErrors", aDesc)
Exit Sub
AlertAndExecNext:
errTitle = "Error "& Err &" at line "& Erl &" in "& Err.Source
MsgBox Err.Description, MB_ICONEXCLAMATION, errTitle
Resume Next
End Sub
Et kort ClassModule, er foldet omkring VBA Err-objektet, kan distribuere Err egenskaber og metoder til standard Collabora Office Basic-moduler.
Option ClassModule
Option VBASupport 1
Public Property Get Description As String
Description = Err.Description
End Property
Public Property Get Number As Long
Number = Err.Number
End Property
Public Property Get Source As String
Source = Err.Source
End Property
Public Sub Clear
Err.Clear
End Sub
Public Sub Raise( number As Long, Optional Source As String, Optional Description As String)
Err.Raise number, Source, Description
End Sub
Function Exc As Object
Exc = New Exception
End Function
Sub aRoutine
try:
On Local Error GoTo catch:
Exc.Raise(4096, "myLib.myModule.aRoutine", _
"Enhver flerlinjet beskrivelse af denne brugerdefinerede undtagelse")
' din kode skrives her …
finally:
Exit Sub
catch:
errTitle = "Error "& Exc.Number &" at line "& Erl &" in "& Exc.Source
MsgBox Exc.Description, MB_ICONSTOP, errTitle
Resume finally
End Sub
Udtrykket Error eller et undtagelseslignende klassemodul kan bruges i flæng, mens det sidste tilføjer ekstra funktionaliteter.