..|| Blog || Produkti/Storitve || MExcel || MDodatki || 300 nasvetov ||..

Lovljenje napak

Pomoč pri izdelavi makrov

Lovljenje napak

OdgovorNapisal/-a gorenjc » Po sep 10, 2007 9:32 am

Zdravo!

Prosil bi za na nasvet glede naslednjega problema in sicer:
Imam glavno proceduro, znotraj katere se pa kliče druga procedura.Lovljenje napak je nastavljeno tako v glavni proceduri, kakor tudi v proceduri,ki jo kličem znotraj te glavne.Zanima me, na kakšen način bi se dalo zaključiti glavno proceduro, če v klicoči proceduri pride do napake.Znano mi je sicer, da bi bil en način z End stavkom, vendar mi ta način ni všeč.
Primer:
sub a()

on error goto error_a
.
.
koda
..
call sub b()

on error goto 0
exit sub
error_a:
'koda za lovljenje napak v glavni proceduri
end sub
sub b()
on error goto error_b
.
.
koda
..
on error goto 0
exit sub
error_b:
'koda za lovljenje napak v proceduri b
end sub

Že vnaprej se zahvaljujem za odgovor.
lp
gorenjc
 
Prispevkov: 2
Pridružen: Če dec 15, 2005 3:51 pm



Matjazev.NET
 

OdgovorNapisal/-a admin » Po sep 10, 2007 9:37 am

Da bi lahko kakorkoli ukrepali v glavni proceduri, vam mora podprocedura sporočiti ali se je uspešno izvedla ali ne! Torej morate napisati FUNKCIJO (in ne proceduro), ki vrača true, če je vse ok oz. false, če se je zgodila napaka.

V primeru, da funkcija vrne falce, pač v kličoči funkciji (oz. proceduri) ustrezno ukrepate; javite napako, končate program ali kar pač želite.
lp,
Matjaž Prtenjak
Administrator
admin
Site Admin
 
Prispevkov: 3493
Pridružen: Sr jul 20, 2005 10:06 pm


Vrni se na VBA

Kdo je prisoten

Po forumu brska: 0 registriranih uporabnikov in 1 gost

cron