On this page you'll find:


vbWatchdog is a code library specifically designed for the VBA and VB6 programming languages.  The product enhances key areas of the VB language by offering:

  • Full access to the callstack (current procedure and module name, etc)
  • Ability to trap errors at a global level for logging or handling of errors
  • Methods to help determine the exact line of code that caused an error, without any alterations to your existing code.
  • A HTML-based Error Dialog that provides access to all of these features.
  • When iterating through the callstack you can dump the live values of variables from procedures on the stack. (Handy when trying to figure out the source of errors when not being able to debug remotely)
  • Under the Access Runtime environment, unhandled VBA errors can be prevented from causing the application to quit (and global variables values retained).


  • Supports VBA6 and VBA7 (Office 2000 to Office 365 / 2019 including both 32-bit and 64-bit editions)
  • Also supports the Access-runtime edition and is compatible with MDEs/ACCDEs.
  • ULTIMATE EDITION: Supports classic VB6 projects (must be compiled to P-Code rather than Native-code)

Getting Started

The table of contents at the top right corner of this webpage is the best place to start.

The first four QuickStart pages are a must read if you are new to vbWatchdog.

However, if you're an advanced VBA developer then you might just want to head over to the Sample application page.