Preface 1. Introduction 2. Preliminaries What Is a Programming Language? Programming Style I. The VBA Environment 3. The Visual Basic Editor, Part I The Project Window The Properties Window The Code Window The Immediate Window Arranging Windows Document Events 4. The Visual Basic Editor, Part II Navigating the IDE Getting Help Creating a Procedure Run Mode, Design Mode, and Break Mode Errors Debugging Macros II. The VBA Programming Language 5. Variables, Data Types, and Constants Comments Line Continuation Constants Variables and Data Types VBA Operators 6. Functions and Subroutines Calling Functions Calling Subroutines Parameters and Arguments Exiting a Procedure Public and Private Procedures Referencing a Project 7. Built-in Functions and Statements The MsgBox Function The InputBox Function VBA String Functions Miscellaneous Functions and Statements 8. Control Statements The If - Then Statement The For Loop The For Each Loop The Do Loop The Select Case Statement A Final Note on VBA III. Objects and Object Models 9. Object Models Objects, Properties, and Methods Collection Objects Object Model Hierarchies Object Model Syntax Object Variables 10. The Word Object Model The Word Object Model: A Perspective Word Enums The VBA Object Browser 11. The Application Object Properties and Methods The Options Object The Task Object The Template Object The Window Object The Pane Object The View Object The Zoom Object 12. The Document Object Properties That Return Collections Spelling-Related Properties and Methods The Documents Collection Adding, Opening, and Saving Documents Password-Related Properties Protection-Related Properties and Methods The Name Properties Printing-Related Methods Additional Members of the Document Object Children of the Document Object Example: Printing Document Headings Example: Finding Used Styles 13. The Section and HeaderFooter Objects Adding a New Section The PageSetup Object Properties of the Section Object The HeaderFooter Object 14. The Range and Selection Objects Comparing the Range and Selection Objects Range and Selection Variables Creating a Range or Selection Object Changing a Range Object Range and Selection Object Properties and Methods 15. The Find and Replace Objects Searching for Text Searching for Formatting The Replace Operation The Execute Method Example: Repeated Searching 16. The Table Object Formatting-Related Properties and Methods The Cell Method The Columns and Rows Properties The ConvertToText Method Sorting Methods The Split Method Example: Creating Tables from Word Lists Example: Closing Up a Table 17. The List Object List Types The List Object The ListTemplate Object and ListGalleries Example: Looking at Lists 18. Shortcut Key Bindings Finding a Key Binding Creating a Key Binding The KeyBinding Object 19. Built-in Dialog Objects The Show Method The Display and Execute Methods The DefaultTab Property The Type Property The Update Method Example: Printing Document Statistics 20. Custom Dialog Boxes What Is a UserForm Object? Example: Adding a Closing to a Letter Example: A Fax Cover Sheet Example: Quick Selection 21. Menus and Toolbars An Overview CustomizationContext The CommandBars Collection The CommandBar Object Command Bar Controls IV. Appendixes A. Programming Word from Another Application B. The Shape Object C. Getting the Installed Printers D. High-Level and Low-Level Languages
Steven Roman is Professor Emeritus of mathematics at the California State University, Fullerton. He has taught at a number of other universities, including MIT, the University of California at Santa Barbara, and the University of South Florida. Dr. Roman received his B.A. degree from the University of California at Los Angeles and his Ph.D. from the University of Washington. Dr. Roman has authored 32 books, including a number of books on mathematics, such as Coding and Information Theory, Advanced Linear Algebra, and Field Theory,published by Springer-Verlag. He has also written a series of 15 small books entitled Modules in Mathematics, designed for the general college-level liberal arts student. Besides his books for O'Reilly (Access Database Design & Programming, Learning Word Programming, Writing Excel Macros, Developing Visual Basic Add-Ins, Win32 API Programming with Visual Basic (in production)), Dr. Roman has written two other computer books, entitled Concepts of Object-Oriented Programming with Visual Basic and Understanding Personal Computer Hardware, an in-depth look at how PC hardware works, both published by Springer-Verlag. Dr. Roman is interested in combinatorics, algebra, and computer science.