Controls (such as buttons and check boxes) can be placed on worksheets or chart sheets next to the data they access so that they're easy for the user to find and understand, and so that using them causes only minimal interruptions during a work session. In addition, because controls are always stored with the sheet they appear on, you never have to worry about losing them when you distribute the application. On the other hand, controls are tied to one sheet — and often to a particular object on that sheet — so they're not the best solution if you need a way to access commands in a variety of situations.
If you need to display a single message or ask the user for one string or number, you can use a message box or an input box. These predefined dialog boxes are easy to create and use, but they can be used only for simple input and output.
You can place controls on a dialog sheet to create a custom dialog box. Custom dialog boxes are useful when you want to manage a complex interaction between the user and the application. However, custom dialog boxes don't offer the quickest access to commands and can interrupt the flow of work.
Whereas dialog boxes are best suited to offering the user a set of complex options and returning information to the user, and controls offer the most visually obvious connection to the data they act on, menus and toolbars offer a quicker, more convenient way to expose simple options and commands to the user.
This chapter discusses using simple predefined dialog boxes and built-in dialog boxes; using controls on worksheets, chart sheets, and dialog sheets; and creating custom dialog boxes. Chapter 9, "Menus and Toolbars," describes in detail how to enhance the user interface of your application using customized menus and toolbars.