The same code can be used for debugging either in development or in production environments. To do so include the following subroutine in the module:
Private Sub ShowMessage(msg As String)
If bDebugMode Then
MsgBox msg, , "This message produced because of
In appropriate places inside code put:
Debug.Print ShowMessage("put here what ever is needed")
bDebugMode can be initialized from the registry or the calling procedure. In a development environment, it will work as Debug.Print. In a production environment, if the value of bDebugMode = True, the Message Box will pop up. Otherwise, it will do nothing.
This technique comes from the idea that Debug.Print statements are not always removed from an executable. (