Let the user know what is happening while your program is running. Always provide status-bar messages and update them at key points during program execution. Long operations should use percentage complete counters (while running loops) and/or provide ongoing status information. Always remember to reset the status bar when your add-in terminates. Otherwise, your last status bar message will persist until some other action changes it. You can do this with the command:
Application.StatusBar = False