Access-8.ppt 525KB Mar 29 2010 04:55:16 AM

Exploring Microsoft Access
Chapter 8
Creating More Powerful
Applications:
Introduction to VBA

Objectives (1 of 2)
• Describe relationship of VBA to Microsoft Office
• Describe components of the Module window
• Describe two ways to create an event procedure
• Explain how the Quick Info and Complete Word
features simplify entry of VBA statements
• Create a combo box to locate a record on a form

Objectives (2 of 2)
• Describe MsgBox parameters
• Create an event procedure to facilitate data entry
through keyboard shortcuts
• Create an event procedure that substitutes an
application-specific message for the standard
Access error messages

• Describe several types of data validation

Overview
• VBA is a programming language to build
truly useful Access applications
• VBA is event driven: Procedures respond to
specific events
• VBA can modify procedures that Access
has already created
• Provide an appreciation for what can be
accomplished with VBA

Introduction to VBA
• Data validation
• Facilitate data entry, including creating
keyboard shortcuts
• Error trapping
• Enhance communication with the user by
using message boxes


Modules and Procedures
• Visual Basic code is developed in units called
procedures
• Event procedures: run automatically in
response to an event
• General procedures: called explicitly from
within another procedure

Modules
• All procedures are stored in modules; one module
contains one or more procedures
• Every form in Access has its own module (Class
module), which contains procedures for that form
• Private procedure: accessible only from within the
module in which it is contained
• Public procedure: accessible from anywhere
• Module window: where procedures in a module
are displayed and edited

Module Window

Name of procedure
(Form_Close)
MsgBox
statement
End of
procedure
Name of next
Procedure
(Form_Current)

MsgBox Statement
• MsgBox takes three arguments (known as
parameters)
• Prompt: Specifies the message text
• Buttons: Type of command buttons and icon
• Title: Text that appears in title bar of the
message box

Create an Event Procedure
Right click on

Form Selector
box and choose
Properties

Select Event tab
Click On Current

Select Code Builder

On Current Event Procedure
Procedure header
Name of Combo
Box from step 3

Complete Word will
provide completion
options

Facilitating Data Entry
• Use the Default property to specify default

values for certain fields
• Use VBA to create keyboard shortcuts
• A KeyDown event procedure can
implement keyboard shortcuts

KeyDown Event Procedure

Key words
Appear in blue

Select Form in the
Object list box

Select KeyDown
from the Procedure List box

ShortCut Command Button
Select the command
button Properties
All tab

Change Name to
ShortCutButton

Change Caption to
&ShortCuts
Command Button tool

Error Trapping
• Produce more user-friendly error message
• Find the error number using the Immediate
window
• Use case statements to test the value of an
incoming variable and produce the appropriate
statement
• Once error is detected, Call MsgBox statement
to display your user-friendly error message
• Else will execute if all Case statements fail

Error Event Procedure
Error numbers


Case 1

Case 2
Else statement

Data Validation
• Invalid data corrupts validity of information
• Data validation is therefore crucial
• Use VBA to extend data validation
capabilities within Access
• Use a nested IF statement to remind users to
leave no fields empty

MsgBox Function vs. Statement
• MsgBox function: displays a prompt to
the user, then returns a value
- Requires parentheses around arguments

• MsgBox statement: simply displays a

message, does not use parentheses

Chapter 8 Summary (1 of 2)
• VBA is a subset of Visual Basic
• VBA is accessible by all Microsoft Office
applications
• All VBA procedures are stored in modules
• Every form in Access has its own module that
contains the event procedures for that form

Chapter 8 Summary (2 of 2)
• All procedures are either public or private:
Private—accessible only from within its module
public—accessible from anywhere
• Event procedures were created to illustrate how
VBA is used to improve an application
• MsgBox function has three arguments:
message, intrinsic constant, and title bar message