SKIP THE SHIPPING
Use code NOSHIP during checkout to save 40% on eligible eBooks, now through January 5. Shop now.
Register your product to gain access to bonus material or receive a coupon.
This PDF will be accessible from your Account page after purchase and requires PDF reading software, such as Acrobat® Reader®.
The eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.
Microsoft Office 2007 is a major upgrade from the last version of Office; Access will also be greatly revised. Alison Balter is the name that Access developers will trust to guide them through Access 2007's new features. She has the rare ability to take complex topics and explain them clearly, as shown by the success of her ten previous books on Access. Balter is known for providing real-world solutions to specific Access development problems. She also is known for her ability to back up her practical examples with just enough underlying theory to give the reader a good overall understanding of Access. In short, this book will provide beginning and intermediate Access developers with everything that they need to know to design and build Access 2007 applications. It should also appeal to DBAs and power users who want or need to get started building custom Access apps. This latest book in her Mastering Access series will not disappoint her many fans who anxiously await each new version, and should win her new fans as well.
Introduction
Part I The Basics of Access Development
1 Access as a Development Tool. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2 What Every Developer Needs to Know About Databases and Tables . . . . . . . 75
3 Relationships: Your Key to Data Integrity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
4 What Every Developer Needs to Know About Query Basics. . . . . . . . . . . . . . . . . 137
5 What Every Developer Needs to Know About Forms. . . . . . . . . . . . . . . . . . . . . . . . . . 189
6 What Every Developer Needs to Know About Reports. . . . . . . . . . . . . . . . . . . . . . . . 269
7 What Are Macros, and When Do You Need Them? . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
8 VBA: An Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
9 Objects, Properties, Methods, and Events Explained . . . . . . . . . . . . . . . . . . . . . . . . . . 401
10 Advanced Form Techniques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
11 Advanced Report Techniques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
12 Advanced Query Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539
13 Advanced VBA Techniques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599
14 Exploiting the Power of Class Modules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637
15 What Are ActiveX Data Objects, and Why Are They Important?. . . . . . . . . . 671
Part II What to Do When Things Don’t Go as Planned
16 Debugging: Your Key to Successful Development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727
17 Error Handling: Preparing for the Inevitable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755
18 Optimizing Your Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801
Part III Developing Multiuser and Enterprise Applications
19 A Strategy to Developing Access Applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835
20 Using External Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 847
21 Access 2007 and SharePoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 883
22 Developing Multiuser and Enterprise Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909
00_0672329328_FM.qxd 5/4/07 9:23 AM Page iii
Part IV Black Belt Programming
23 Working with and Customizing Ribbons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 935
24 Automation: Communicating with Other Applications. . . . . . . . . . . . . . . . . . . . . . 949
25 Exploiting the Power of the Windows API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 985
26 Creating Your Own Libraries. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1011
27 Using Builders and Wizards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027
28 An Introduction to Access and the Internet/Intranet. . . . . . . . . . . . . . . . . . . . . . . . 1055
Part V Adding Polish to Your Application
29 Documenting Your Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1073
30 Maintaining Your Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1091
31 Database Security Made Easy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1103
The following appendixes are available for download
at www.samspublishing.com/title/0672329328.
Part VI Appendixes
A Naming Conventions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PDF:1131
B Table Structures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PDF:1137
Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1193
Introduction
Part I The Basics of Access Development
1 Access as a Development Tool. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2 What Every Developer Needs to Know About Databases and Tables . . . . . . . 75
3 Relationships: Your Key to Data Integrity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
4 What Every Developer Needs to Know About Query Basics. . . . . . . . . . . . . . . . . 137
5 What Every Developer Needs to Know About Forms. . . . . . . . . . . . . . . . . . . . . . . . . . 189
6 What Every Developer Needs to Know About Reports. . . . . . . . . . . . . . . . . . . . . . . . 269
7 What Are Macros, and When Do You Need Them? . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
8 VBA: An Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
9 Objects, Properties, Methods, and Events Explained . . . . . . . . . . . . . . . . . . . . . . . . . . 401
10 Advanced Form Techniques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
11 Advanced Report Techniques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493
12 Advanced Query Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 539
13 Advanced VBA Techniques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 599
14 Exploiting the Power of Class Modules. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 637
15 What Are ActiveX Data Objects, and Why Are They Important?. . . . . . . . . . 671
Part II What to Do When Things Don’t Go as Planned
16 Debugging: Your Key to Successful Development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 727
17 Error Handling: Preparing for the Inevitable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755
18 Optimizing Your Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 801
Part III Developing Multiuser and Enterprise Applications
19 A Strategy to Developing Access Applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 835
20 Using External Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 847
21 Access 2007 and SharePoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 883
22 Developing Multiuser and Enterprise Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 909
00_0672329328_FM.qxd 5/4/07 9:23 AM Page iii
Part IV Black Belt Programming
23 Working with and Customizing Ribbons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 935
24 Automation: Communicating with Other Applications. . . . . . . . . . . . . . . . . . . . . . 949
25 Exploiting the Power of the Windows API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 985
26 Creating Your Own Libraries. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1011
27 Using Builders and Wizards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1027
28 An Introduction to Access and the Internet/Intranet. . . . . . . . . . . . . . . . . . . . . . . . 1055
Part V Adding Polish to Your Application
29 Documenting Your Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1073
30 Maintaining Your Application. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1091
31 Database Security Made Easy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1103
The following appendixes are available for download
at www.samspublishing.com/title/0672329328.
Part VI Appendixes
A Naming Conventions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PDF:1131
B Table Structures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . PDF:1137
Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1193