Err objektua [VBA]

Erabili VBAren Err objektua exekuzio-garaiko erroreak sortzeko edo maneiatzeko.

Err VBAn integratutako objektu globala da, honakoak egitea ahalbidetzen duena:

warning

Konstante, funtzio edo objektu hau Option VBASupport 1 instrukzioa programa-kode exekutagarriko modulu batean kokatuta gaitzen da.


VBAren Err objektuak honako propietateak eta metodoak ditu:

Propietateak

Err.Description As String

The Description propietateak errorearen izaera erakusten du. Description propietateak errorearen zergatia izan daitezkeen arrazoien xehetasunak ematen ditu. Posible bada, auzia konpontzeko eta berriro gertatu ez dadin egin behar diren balizko urratsak ematen ditu. Basic aliasa aurredefinituta Collabora Office erroreetarako Error funtzioa da.

Err.Number As Long

Erroreari lotutako errore-kodea. Err objektuaren propietate lehenetsia Number da. Collabora Office Basic aliasa Err funtzioa da.

Err.Source As String

Source propietateak errora sortu duen errutinaren izena adierazten du. Source erabiltzaileak definitutako erroreetarako aukera bat da.

Metodoak

Err.Clear()

Uneko errorearen deskribapena, Erl, zenbakia eta iturburua berrezartzen ditu. Collabora Office Basic aliasa Resume instrukzioa da.

Err.Raise(Number As Long, Optional source As String, Optional description As String)

Erabiltzaileak definitutako erroreak edo errore aurredefinituak sortzen ditu. Collabora Office Basic aliasa Error instrukzioa da.

Parametroak

Number: Sortuko den errorearen kodea, erabiltzaileak definitutakoa edo aurredefinitutakoa.

note

0 eta 2000 zenbakien arteko errore-kodeak Collabora Office Basic berarentzat erreserbatuta daude. Erabiltzaileak definitutako erroreek balio handiagoa eduki behar dute Collabora Office Basic lengoaiaren etorkizuneko garapenekin gatazkarik ez izateko.


Source: Errorea sortu duen errutinaren izena. Gomendagarria da "myLibrary.myModule.myProc" formako izena erabiltzea.

Description: Exekuzioan dagoen prozesua geldiaraztea eragiten duen arazoaren deskribapena, eta errorea sortu dezaketen arrazoiak. Gomendagarria da arazoa konpontzen lagundu dezaketen ekintza-lerroen zerrenda xehe bat ematea.

Adibidea:

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:="Errore hau erabiltzaileak definitutakoa da …"
    Err.Raise(4096, "Standard.Module1.ThrowErrors", aDesc)
    Exit Sub
AlertAndExecNext:
    errTitle = "Errorea "& Err &" honako lerroan: "& Erl &" hemen: "& Err.Source
    MsgBox Err.Description, MB_ICONEXCLAMATION, errTitle
    Resume Next
End Sub

Exception ClassModule

tip

ClassModule labur bat, VBAren Err objektua biltzen duena eta Err propietateak eta metodoak banatu ditzakeena Collabora Office Basic moduluetarako.


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

Adibidea

Function Exc As Object
    Exc = New Exception
End Function

Sub aRoutine
try:
    On Local Error GoTo catch:
    Exc.Raise(4096, "myLib.myModule.aRoutine", _
        "Edozein lerro anitzeko deskribapen erabiltzaileak definitutako salbuespen honetarako")
    ' zure kodea hemen doa …
finally:
    Exit Sub
catch:
    errTitle = "Errorea: "& Exc.Number &" honako lerroan: "& Erl &" hemen: "& Exc.Source
    MsgBox Exc.Description, MB_ICONSTOP, errTitle
    Resume finally
End Sub
note

Error instrukzioa edo Exception motako klase-modulu bat, bietako edozein erabili daiteke. Azkenak eginbide gehiago ditu.


Emaguzu laguntza!