Collabora Office 24.04 Βοήθεια
Χρησιμοποιήστε το αντικείμενο VBA Err για πρόκληση ή χειρισμό σφαλμάτων χρόνου εκτέλεσης.
Το Err είναι ενσωματωμένο καθολικό αντικείμενο VBA που επιτρέπει:
την πρόκληση προκαθορισμένων σφαλμάτων Basic
τη δημιουργία εξαιρέσεων του χρήστη
την ονομασία της ρουτίνας που δημιουργεί το σφάλμα
για περιγραφή του σφάλματος και πιθανών λύσεων
Το αντικείμενο VBA Err έχει τις παρακάτω ιδιότητες και μεθόδους:
Err.Description As String
Η ιδιότητα Description (περιγραφή) δίνει τη φύση του σφάλματος. Η Description δίνει λεπτομέρειες των διάφορων αιτίων που μπορεί να είναι η αιτία του σφάλματος. Ιδεατά, παρέχει την πολλαπλή διαδρομή των ενεργειών για να βοηθήσει στην επίλυση του προβλήματος και αποτρέπει την επανεμφάνισή του. Η παραλλαγή Basic είναι η συνάρτηση Error για τα προκαθορισμένα σφάλματα του Collabora Office.
Err.Number As Long
Ο κωδικός σφάλματος σχετίστηκε με το σφάλμα. Η προεπιλεγμένη ιδιότητα ρου αντικειμένου Err είναι η Number (αριθμός). Η παραλλαγή Basic του Collabora Office είναι η συνάρτηση Err.
Err.Source As String
Source (προέλευση) δείχνει το όνομα της ρουτίνας που παράγει το σφάλμα. Source είναι μια επιλογή για σφάλματα χρήστη.
Err.Clear()
Επαναφέρει την περιγραφή, Erl, τον αριθμό και τις ιδιότητες πηγής του τρέχοντος σφάλματος. Η παραλλαγή Basic του Collabora Office είναι η πρόταση Resume.
Err.Raise(Number As Long, Optional source As String, Optional description As String)
Εμφανίζει τα προκαθορισμένα σφάλματα από τον χρήστη. Η παραλλαγή Basic του Collabora Office είναι η πρόταση Error.
Number: Ένας κωδικός σφάλματος του χρήστη ή προκαθορισμένος που θα ενεργοποιηθεί.
Η περιοχή κωδικών σφαλμάτων 0-2000 έχει κρατηθεί για το Collabora Office Basic. Τα σφάλματα του χρήστη μπορεί να ξεκινούν από υψηλότερες τιμές για να αποτρέψουν σύγκρουση με τις μελλοντικές αναπτύξεις του Collabora Office Basic.
Source: Το όνομα της ρουτίνας που ενεργοποιεί το σφάλμα. Συνιστάται ένα όνομα στη μορφή "myLibrary.myModule.myProc".
Description: Περιγραφή του προβλήματος που οδηγεί σε διακοπή της εκτελούμενης διεργασίας, που συνοδεύεται με τις διάφορες αιτίες που μπορεί να το προκάλεσαν. Συνιστάται ένας λεπτομερής κατάλογος της πιθανής πορείας των ενεργειών που μπορεί να βοηθήσει στην επίλυση του προβλήματος.
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:="This is an intended user-defined error (Αυτό είναι ένα σκόπιμο σφάλμα του χρήστη)…"
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
Σύντομο ClassModule, που περιβάλλει αντικείμενο Err του VBA, μπορεί να κατανείμει ιδιότητες και μεθόδους Err για τυπικά αρθρώματα Basic του Collabora Office.
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", _
"Οποιαδήποτε περιγραφή πολλών γραμμών για αυτήν την εξαίρεση του χρήστη")
' ο κώδικάς σας πηγαίνει εδώ …
finally:
Exit Sub
catch:
errTitle = "Error "& Exc.Number &" at line "& Erl &" in "& Exc.Source
MsgBox Exc.Description, MB_ICONSTOP, errTitle
Resume finally
End Sub
Η πρόταση Error ή άρθρωμα κλάσης παρόμοιο με εξαίρεση μπορεί να χρησιμοποιηθεί εναλλακτικά, ενώ το δεύτερο προσθέτει περισσότερα γνωρίσματα.