Fråga : Global felförlagehanterare och på felmeritförteckning därefter

Jag har en felförlagehanterare i tillträdeet att peka rutinmässigt av min app. Jag önskar alla fel i downstream tillvägagångssätt till GoTo denna felförlagehanterare. Besvära är mig har downstream tillvägagångssätt för en radda som använder på felmeritförteckning därefter… på fel GoTo 0, som åsidosättanden som felet GoTo Error_Handler i tillträdeet pekar på routine.

I, har försökt utbytning på fel GoTo 0 med på felet GoTo Error_Handler, men som producerar funnit fel för fodraetikett ett inte. I downstream fungerar, är där a långt som ska användas på felmeritförteckning därefter och som därefter på nollställas feluppförandet till på felet GoTo Error_Handler i stället för på fel GoTo 0?
" klar "

Svar : Global felförlagehanterare och på felmeritförteckning därefter

Jag applåderar dig för att önska en allmänningfelförlagehanterare.  Låt mig förklara hur jag gör det.

Skapa ett globalt fungerar för din logik för allmänningfelförlagehanteraren.  ”Tillträdeet pekar av din app” kan fungera--Jag vet inte--det behöver att vara callable från någonstans. Låt oss appellen den functio ErrorRoutine ().

Kodifiera därefter alla suboutines något något liknande detta:


Privata underMySub ()
På GoTo fullföljande för fel
….,

På felmeritförteckning därefter
…,
På GoTo fullföljande för fel

….,

Fullföljande:
Om err.number därefter om (vbRetry) ErrorRoutine = vbRetry därefter meritförteckning  
…,
Gå ut suben



Min version av ErrorRoutine utvärderar för parametern och om gåva utfärdar en abortera, annulleringen för försöka igen, försöker igen precis.  Detta tillstånd den vikande funktionen att försökas igen (som jag finner användbart för debuggin).






Andra lösningar  
 
programming4us programming4us