Book description
I recommend this book for anyone who wants a strong foundation in Access.
—Jeff Lenamon, CIBC World Markets
Updated edition with exciting new Access 2007 features!
Harness the power of Access 2007 with the expert guidance in this comprehensive reference. Beginners will appreciate the thorough attention to database fundamentals and terminology. Experienced users can jump right into Access 2007 enhancements like the all-new user interface and wider use of XML and Web services. Each of the book's six parts thoroughly focuses on key elements in a logical sequence, so you have what you need, when you need it. Designed as both a reference and a tutorial, Access 2007 Bible is a powerful tool for developers needing to make the most of the new features in Access 2007.
Build Access tables using good relational database techniques
Construct efficient databases using a five-step design method
Design efficient data-entry and data display forms
Utilize the improved Access report designer
Use Visual Basic(r) for Applications and the VBA Editor to automate applications
Build and customize Access 2007 ribbons
Seamlessly exchange Access data with SharePoint(r)
Employ advanced techniques such as the Windows(r) API and object-oriented programming
Add security and use data replication in your Access applications
What's on the CD-ROM?
Follow the examples in the book chapter by chapter using the bonus materials on the CD-ROM. You'll find separate Microsoft Access database files for each chapter and other working files, including
All the examples and databases used in the book, including database files, images, data files in various formats, and icon files used in the book's examples
A complete sample application file, including queries, reports, objects, and modules, that you can use as a reference
See the CD-ROM appendix for details and complete system requirements.
Note: CD-ROM/DVD and other supplementary materials are not included as part of eBook file.
Table of contents
- Copyright
- About the Authors
- Credits
- Acknowledgments
- Introduction
-
I. Access Building Blocks
-
1. An Introduction to Database Development
- 1.1. The Database Terminology of Access
- 1.2. Relational Databases
- 1.3. Access Database Objects and Views
- 1.4. A Five-Step Design Method
- 1.5. Summary
-
2. Creating Access Tables
- 2.1. Getting Started with Access 2007
- 2.2. Creating a Database
- 2.3. The Access 2007 Environment
-
2.4. Creating a New Table
- 2.4.1. The importance of naming conventions
- 2.4.2. The table design process
- 2.4.3. Using the Design ribbon tab
- 2.4.4. Working with fields
- 2.5. Creating tblContacts
-
2.6. Changing a Table Design
- 2.6.1. Inserting a new field
- 2.6.2. Deleting a field
- 2.6.3. Changing a field location
- 2.6.4. Changing a field name
- 2.6.5. Changing a field size
- 2.6.6. Data conversion issues
- 2.6.7. Assigning field properties
- 2.7. Understanding tblContacts Field Properties
- 2.8. Setting the Primary Key
- 2.9. Indexing Access Tables
- 2.10. Printing a Table Design
- 2.11. Saving the Completed Table
- 2.12. Manipulating Tables in a Database Window
- 2.13. Adding Records to a Database Table
- 2.14. Understanding the Attachment Data Type
- 2.15. Summary
-
3. Designing Bulletproof Databases
- 3.1. Data Normalization
- 3.2. Table Relationships
- 3.3. Integrity Rules
- 3.4. Understanding Keys
- 3.5. Summary
-
4. Selecting Data with Queries
- 4.1. Understanding Queries
- 4.2. Creating a Query
- 4.3. Selecting Fields
- 4.4. Displaying the Recordset
- 4.5. Working with Fields
- 4.6. Changing the Sort Order
- 4.7. Displaying Only Selected Records
- 4.8. Printing a Query's Recordset
- 4.9. Saving a Query
- 4.10. Adding More Than One Table to a Query
- 4.11. Working with the Table/Query Pane
- 4.12. Adding Fields from More Than One Table
- 4.13. Understanding Multi-Table Query Limitations
- 4.14. Creating and Working with Query Joins
- 4.15. Understanding Table Join Types
- 4.16. Summary
-
5. Using Operators and Expressions in Access
- 5.1. What Are Operators?
- 5.2. Moving beyond Simple Queries
- 5.3. Entering Single-Value Field Criteria
-
5.4. Entering Multiple Criteria in One Field
- 5.4.1. Understanding an Or operation
- 5.4.2. Specifying multiple values for a field using the Or operator
- 5.4.3. Using the Or: cell of the QBE pane
- 5.4.4. Using a list of values with the In operator
- 5.4.5. Understanding an And query
- 5.4.6. Specifying a range using the And operator
- 5.4.7. Using the Between...And operator
- 5.4.8. Searching for Null data
- 5.5. Entering Criteria in Multiple Fields
- 5.6. Creating a New Calculated Field in a Query
- 5.7. Summary
-
6. Working with Datasheet View
- 6.1. Understanding Datasheets
- 6.2. The Datasheet Window
- 6.3. Opening a Datasheet
- 6.4. Entering New Data
- 6.5. Navigating Records in a Datasheet
- 6.6. Changing Values in a Datasheet
- 6.7. Using the Undo Feature
- 6.8. Copying and Pasting Values
- 6.9. Replacing Values
- 6.10. Adding New Records
- 6.11. Deleting Records
-
6.12. Displaying Records
- 6.12.1. Changing the field order
- 6.12.2. Changing the field display width
- 6.12.3. Changing the record display height
- 6.12.4. Changing display fonts
- 6.12.5. Displaying cell gridlines and alternate row colors
- 6.12.6. Aligning data in columns
- 6.12.7. Hiding and unhiding columns
- 6.12.8. Freezing columns
- 6.12.9. Saving the changed layout
- 6.12.10. Saving a record
- 6.13. Sorting and Filtering Records in a Datasheet
- 6.14. Printing Records
- 6.15. Summary
-
7. Creating Basic Access Forms
- 7.1. Adding Forms Using the Ribbon
- 7.2. Adding Controls
- 7.3. Selecting Controls
-
7.4. Manipulating Controls
- 7.4.1. Resizing a control
- 7.4.2. Sizing controls automatically
- 7.4.3. Moving a control
- 7.4.4. Aligning controls
- 7.4.5. Modifying the appearance of a control
- 7.4.6. Modifying the appearance of multiple controls
- 7.4.7. Grouping controls
- 7.4.8. Deleting a control
- 7.4.9. Attaching a label to a control
- 7.4.10. Copying a control
- 7.4.11. Changing the control type
- 7.5. Understanding properties
- 7.6. Summary
- 8. Working with Data on Access Forms
-
9. Presenting Data with Access Reports
- 9.1. Understanding Reports
-
9.2. Creating a Report with Report Wizards
- 9.2.1. Creating a new report
- 9.2.2. Selecting the grouping levels
- 9.2.3. Defining the group data
- 9.2.4. Selecting the sort order
- 9.2.5. Selecting summary options
- 9.2.6. Selecting the layout
- 9.2.7. Choosing the style
- 9.2.8. Opening the report design
- 9.2.9. Using the Print Preview window
- 9.2.10. Viewing the Report Design window
- 9.3. Printing a Report
- 9.4. Saving the Report
- 9.5. Starting with a Blank Form
- 9.6. Banded Report Writer Concepts
-
9.7. Creating a Report from Scratch
- 9.7.1. Creating a new report and binding it to a query
- 9.7.2. Defining the report page size and layout
- 9.7.3. Placing controls on the report
- 9.7.4. Resizing a section
-
9.7.5. Working with text boxes and their attached label controls
- 9.7.5.1. Adding and using text box controls
- 9.7.5.2. Entering an expression in a text control
- 9.7.5.3. Sizing a text box control or label control
- 9.7.5.4. Deleting and cutting attached labels from text controls
- 9.7.5.5. Pasting labels into a report section
- 9.7.5.6. Moving label and text controls
- 9.7.5.7. Modifying the appearance of multiple controls
- 9.7.6. Changing label and text box control properties
- 9.7.7. Growing and shrinking text box controls
- 9.7.8. Sorting and grouping data
- 9.7.9. Sorting data within groups
- 9.7.10. Adding page breaks
- 9.8. Making the Report Presentation Quality
- 9.9. Summary
-
1. An Introduction to Database Development
-
II. Programming Microsoft Access
-
10. VBA Programming Fundamentals
- 10.1. Understanding the Limitations of Macros
- 10.2. Introducing Visual Basic for Applications
- 10.3. Understanding VBA Terminology
- 10.4. Migrating from Macros to VBA
-
10.5. Creating VBA Programs
- 10.5.1. Understanding events and event procedures
- 10.5.2. Understanding modules
-
10.5.3. Creating a new module
- 10.5.3.1. Working in the Code window
- 10.5.3.2. The Declarations section
- 10.5.3.3. Creating a new procedure
- 10.5.3.4. Using IntelliSense
- 10.5.3.5. Compiling procedures
- 10.5.3.6. Saving a module
- 10.5.3.7. Creating procedures in the Form or Report Design window
- 10.5.3.8. Editing an existing procedure
- 10.5.3.9. Checking your results in the Immediate window
- 10.6. Understanding VBA Branching Constructs
- 10.7. Repetitive Looping
- 10.8. Working with Objects and Collections
- 10.9. Using Compiler Directives
- 10.10. Access 2007 Options for Developers
- 10.11. Summary
- 11. Mastering VBA Data Types and Procedures
- 12. Understanding the Access Event Model
-
13. Using Expressions in Queries and VBA Code
- 13.1. Understanding Expressions
- 13.2. Understanding Functions
- 13.3. Summary
-
14. Accessing Data with VBA Code
- 14.1. Understanding SQL
- 14.2. Creating Programs to Update a Table
- 14.3. Summary
- 15. Using the VBA Debugging Tools
-
10. VBA Programming Fundamentals
-
III. More Advanced Access Techniques
-
16. Working with External Data
- 16.1. Access and External Data
-
16.2. Linking External Data
- 16.2.1. Linking to external database tables
- 16.2.2. Limitations of linked data
- 16.2.3. Linking to other Access database tables
- 16.2.4. Linking to ODBC data sources
- 16.2.5. Linking to dBASE databases (tables)
- 16.2.6. Linking to Paradox tables
- 16.2.7. Linking to non-database data
- 16.2.8. Splitting an Access database
- 16.3. Working with Linked Tables
- 16.4. Using Code to Link Tables in Access
- 16.5. Summary
-
17. Importing and Exporting Data
- 17.1. Types of Imports and Exports
-
17.2. Importing External Data
- 17.2.1. Importing from another Access database
- 17.2.2. Importing spreadsheet data
- 17.2.3. Importing a SharePoint list
- 17.2.4. Importing text file data
- 17.2.5. Importing an XML document
- 17.2.6. Importing an HTML document
- 17.2.7. Importing Access objects other than tables
- 17.2.8. Importing an Outlook folder
- 17.2.9. Importing through ODBC drivers
- 17.2.10. Importing non-Access, PC-based database tables
- 17.2.11. Troubleshooting import errors
- 17.3. Exporting to External Formats
- 17.4. Summary
-
18. Advanced Access Query Techniques
- 18.1. Using Calculated Fields
- 18.2. Finding the Number of Records in a Table or Query
- 18.3. Finding the Top (n) Records in a Query
- 18.4. How Queries Save Field Selections
- 18.5. Setting Query Properties
- 18.6. Creating Queries That Calculate Totals
- 18.7. Crosstab Queries
- 18.8. Duplicate and Unmatched Queries
- 18.9. SQL-Specific Queries
- 18.10. Action Queries
- 18.11. Summary
-
19. Advanced Access Form Techniques
- 19.1. Setting Control Properties
- 19.2. Working with Subforms
-
19.3. Form Design Techniques
- 19.3.1. Using the Tab Stop property
- 19.3.2. Tallying check boxes
- 19.3.3. Adding animation
- 19.3.4. Using SQL for a faster refresh
- 19.3.5. Selecting data for overtyping
- 19.3.6. Toggling properties with Not
- 19.3.7. Creating an auto-closing form
- 19.3.8. Combo box techniques
- 19.3.9. Determining whether a form is open
- 19.4. Advanced Forms Techniques
- 19.5. Using the Tab Control
- 19.6. Using Dialog Boxes to Collect Information
- 19.7. Summary
-
20. Advanced Access Report Techniques
- 20.1. Hide Repeating Information
- 20.2. Alphabetically Group Data
- 20.3. Group on Date Intervals
- 20.4. Create Numbered Lists
- 20.5. Add Bullet Characters
- 20.6. Add Emphasis at Runtime
- 20.7. Hide a Page Header
- 20.8. Avoid Empty Reports
- 20.9. Start a New Page Number for Each Group
- 20.10. Avoid Null Values in a Tabular Report
- 20.11. Add More Information to Report
- 20.12. Add the User's Name to a Bound Report
- 20.13. Add Vertical Lines between Columns
- 20.14. Add a Blank Line Every n Records
- 20.15. Even-Odd Page Printing
- 20.16. Display All Reports in a Combo Box
- 20.17. Use Different Formats in the Same Text Box
- 20.18. Fast Printing from Queried Data
- 20.19. Hide Forms during Print Preview
- 20.20. A Few Quick Report Tips
- 20.21. Use Snaking Columns in a Report
- 20.22. Exploiting Two-Pass Report Processing
- 20.23. Summary
- 21. Building Multiuser Applications
-
22. Integrating Access with Other Applications
- 22.1. Using Automation to Integrate with Office
-
22.2. An Automation Example Using Word
- 22.2.1. Creating an instance of a Word object
- 22.2.2. Making the instance of Word visible
- 22.2.3. Creating a new document based on an existing template
- 22.2.4. Using Bookmarks to insert data
- 22.2.5. Activating the instance of Word
- 22.2.6. Moving the cursor in Word
- 22.2.7. Closing the instance of the Word object
- 22.2.8. Inserting pictures by using bookmarks
- 22.2.9. Using Office's Macro Recorder
- 22.3. Collecting Data with Outlook 2007
- 22.4. Summary
-
23. Integrating Access with SharePoint
- 23.1. What Is SharePoint?
- 23.2. SharePoint Applications: Types of Web Sites
- 23.3. What Is a SharePoint List?
- 23.4. Introducing a SharePoint Services Web Site
- 23.5. Integrating Access 2007 and SharePoint
- 23.6. SharePoint and Different Operating Systems
- 23.7. SharePoint Lists as External Data
- 23.8. Summary
-
24. Using ActiveX Controls
- 24.1. Understanding Objects
- 24.2. Embedding Objects
- 24.3. Linking Objects
- 24.4. Creating a Graph or Chart
- 24.5. Embedding a Graph in a Form
- 24.6. Integration with Microsoft Office
- 24.7. Summary
- 25. Handling Errors and Exceptions
-
16. Working with External Data
-
IV. Professional Database Development
-
26. Optimizing Access Applications
- 26.1. Understanding Module Load on Demand
- 26.2. Using the Access 2007 Database File Format
- 26.3. Distributing .accde Files
- 26.4. Understanding the Compiled State
-
26.5. Improving Absolute Speed
- 26.5.1. Opening a database exclusively
- 26.5.2. Compacting a database
- 26.5.3. Tuning your system
- 26.5.4. Getting the most from your tables
- 26.5.5. Getting the most from your queries
- 26.5.6. Getting the most from your forms and reports
- 26.5.7. Getting the most from your modules
- 26.5.8. Increasing Network performance
- 26.6. Improving Perceived Speed
-
26.7. Working with Large Program Databases in Access 2007
- 26.7.1. How databases grow in size
- 26.7.2. Compiling and compacting may not be enough
- 26.7.3. Rebooting gives you a clean memory map
- 26.7.4. Fixing a single corrupt form by removing the record source
- 26.7.5. Creating a new database and importing all objects
- 26.7.6. Using the decompile option in Access 2007
- 26.7.7. Recapping the six steps to large database success
- 26.7.8. Detecting an uncompiled database and automatically recompiling
- 26.7.9. Making small changes to large databases — Export
- 26.8. Summary
- 27. Advanced Data Access with VBA
-
28. Bulletproofing Access Applications
- 28.1. What Is Bulletproofing?
- 28.2. Characteristics of Bulletproof Applications
-
28.3. Bulletproofing Goes Beyond Code
- 28.3.1. Document the code you write
- 28.3.2. Build to a specification
- 28.3.3. Document the application
- 28.3.4. Use professional installation tools
- 28.3.5. Provide the Access runtime module to users
- 28.3.6. Consider the user's skill and training requirements
- 28.3.7. Understand the user's motivations
- 28.3.8. Check for obvious hardware errors
- 28.3.9. Continue to improve the product
-
28.4. Principles of Bulletproofing
- 28.4.1. Make the application easy to start
- 28.4.2. Use startup options
- 28.4.3. Use a login form
- 28.4.4. Use a splash screen
- 28.4.5. Add switchboards to the application
- 28.4.6. Control the ribbons
- 28.4.7. Hide the Navigation Pane and remove menus
- 28.4.8. Display one form at a time
- 28.4.9. Trap unwanted keystrokes
- 28.4.10. Build bulletproof forms
- 28.4.11. Validate user input
- 28.4.12. Keep the user informed
- 28.4.13. Maintain usage logs
- 28.5. Develop to a Specification
- 28.6. Securing the Environment
- 28.7. Setting Startup Options in Code
- 28.8. Disable Startup Bypass
- 28.9. Providing User Feedback
- 28.10. Adding Logging to Applications
- 28.11. Summary
-
29. Securing Access Applications
- 29.1. Understanding Jet Security
- 29.2. Choosing a Security Level to Implement
- 29.3. Creating a Database Password
- 29.4. Using the /runtime Option
- 29.5. Using the Current Database Options
- 29.6. Using the Jet User-Level Security Model
- 29.7. Using the Access Security Wizard
- 29.8. Encrypting/Encoding a Database
- 29.9. Decrypting/Decoding a Database
- 29.10. Protecting Visual Basic Code
- 29.11. Preventing Virus Infections
- 29.12. Summary
-
30. Using the Windows API
- 30.1. What Is the Windows API?
- 30.2. Why Use the Windows API?
- 30.3. DLL Documentation
- 30.4. How to Use the Windows API
- 30.5. API Examples
- 30.6. Summary
-
31. Using the Access Replication Features
- 31.1. Understanding Replication
- 31.2. A Replication Demonstration
- 31.3. Replication Pros and Cons
- 31.4. Introducing the Access Replication Tools
- 31.5. Creating a Replica Set
- 31.6. Understanding Database Security in Replication Sets
- 31.7. The Importance of Local Objects
- 31.8. Resolving Replication Conflicts
- 31.9. Replication Topologies
- 31.10. Replication from the Developer's Perspective
- 31.11. Understanding the Changes to Database Objects
- 31.12. Changes to the Design Master Structure
- 31.13. Programming Replication
-
31.14. Partial Replicas
- 31.14.1. Using the Partial Replica Wizard
- 31.14.2. Choosing the type of replica
-
31.14.3. Programming partial replication with VBA
- 31.14.3.1. Creating the partial replica
- 31.14.3.2. Setting the partial replica's filter criteria
- 31.14.3.3. Creating table relationships in the partial replica
- 31.14.3.4. Filling the partial replica with data
- 31.14.3.5. Replicating partial replicas
- 31.14.3.6. Maintaining referential integrity in partial replicas
- 31.15. Advanced Replication Considerations
- 31.16. Summary
-
32. Object-Oriented Programming with VBA
- 32.1. Benefits of Object-Oriented Programming
- 32.2. Other Advantages of Object-Oriented Programming Techniques
- 32.3. Object-Oriented Programming Rules
- 32.4. Using Property Procedures
- 32.5. Extending the Product Class
- 32.6. Product Methods
- 32.7. Class Events
- 32.8. Adding Events to Class Modules
- 32.9. Summary
- 33. Reusing VBA Code with Libraries
-
34. Customizing Access Ribbons
- 34.1. Why Replace Toolbars and Menus?
- 34.2. Working with the Access 2007 Ribbon
- 34.3. Working with the Quick Access Toolbar
- 34.4. Access 2007 Ribbons: The Developer's Perspective
- 34.5. The Ribbon Hierarchy
- 34.6. Getting Started with Access 2007 Ribbons
- 34.7. The Basic Ribbon XML
- 34.8. Adding Ribbon Controls
- 34.9. Using Visual Web Developer 2005
- 34.10. Managing Ribbons
- 34.11. Completely Removing the Access 2007 Ribbon
- 34.12. Summary
- 35. Distributing Access Applications
- 36. Using Access Macros
-
26. Optimizing Access Applications
-
V. Access as an Enterprise Platform
- 37. Using XML in Access 2007
- 38. SharePoint as a Data Source
- 39. Client/Server Concepts
- 40. SQL Server as an Access Companion
- 41. Upsizing Access Databases to SQL Server
- VI. Appendixes
- Wiley Publishing, Inc.End-User License Agreement
Product information
- Title: Access™ 2007 Bible
- Author(s):
- Release date: January 2007
- Publisher(s): Wiley
- ISBN: 9780470046739
You might also like
book
Access® 2010 Bible
The expert guidance you need to get the most out of Access 2010 Get the Access …
book
Excel® 2010 Bible
A comprehensive reference to the newest version of the world’s most popular spreadsheet application: Excel 2010 …
book
Excel® 2007 PivotTables and PivotCharts
Though many consumers know the basics of using Excel, few users understand the powerful capabilities of …
book
Microsoft® Offic Excel® 2007 Visual Basic® for Applications Step by Step
Quickly teach yourself how to automate tasks and create custom spreadsheet solutions with Excel 2007 Visual …