Access 2007 VBA Programmer's Reference (0470047038) cover image

Access 2007 VBA Programmer's Reference

Teresa Hennig, Rob Cooper, Geoffrey L. Griffith, Armen Stein
ISBN: 978-0-470-04703-3
1152 pages
May 2007
Other Available Formats: E-book
This title is out-of-print and not currently available for purchase from this site.

Do you think you've discovered an error in this book? Please check the list of errata below to see if we've already addressed the error. If not, please submit the error via our Errata Form. We will attempt to verify your error; if you're right, we will post a correction below.

ChapterPageDetailsDatePrint Run
2 Typo in Text
Line 24 on the page:

... , which make build Access database ...

Should be

... , which make building Access database ...
14 Error in Text
line 8:
for Tables Queries, Forms

should be:
for Tables, Queries, Forms
19 Error in Text Reference
4th paragrapgh, line 4 reads:
The Properties pane (lower-right)

It should read:
The Properties pane (lower-left)
19 Error in Text
Errata, page 19, 4th paragrapgh, line 4 reads...
The Properties pane (lower-right)...
Should be...
The Properties pane (lower-left)...
137 Error in Code
7th line from top:

tdf.Indexes.Delete varPKey

should be:

tdf.Indexes.Delete strPKey
137 Error in Code
"IntCounter" spelled wrong in second line of code
137 Error in Text
Second gray box of code, second line from top of box:
For intCouter = LBound.....
should be:
For int Counter = LBound.....
142 Error in Text
The gray box for the code, on page 142, 2/3 down the page, is broken and the word "Country" looks out of place, even though it is part of the comment just above it. This initially is confusing.
144 Error in Text
On page 144 in the code for "Using the NewPassword Method section, before actually changing the password, shouldn't you check to see that the "strNewPassword" variable is the correct length. This would be consistent with other coding shown for setting/changing the password shown in the sections "Compacting a Database" and "Creating a New Database", on pages 144 and 145.
151 Error in Code
Example: Adding Users to groups Code (8th line)

Set grp = wrk.Groups(strUser)

should be:

Set grp = wrk.Groups(strGroup)
157 Error in Text
Under "Setting Permissions" header:

"set only"

should be:

"only set"
160 Error in Text
Queries that insert, update, or delete queries are known as action queries

Should be

Queries that insert, update, or delete records are known as action queries
363 Error in Code
The second line of code reads:
DoCmd.OpenReport strReport, acViewPreview

but should read:
DoCmd.OpenReport strReport, acViewDesign
674, 675 Error in Text
on page 674: line 28

"ODBC:" & _
should be
"ODBC;" & _

on page 675: line 15

should be
19 Chapter 19 File Update
A revised zip file for Chapter 19 containing an updated “SampleACCDB.accdb” file was posted to the Download Code page on 3/1/10.
823 Error in Text
The 3rd paragraph implies that the Interface for a class is NOT required to interop with COM, only if you want to have IntelliSense. However, this is not the case. The Interface is required, as shown in this MSDN article:
831 Error in Text
Step 2 in the text:

name the Resource file as Ribbon.XML

The file should be named as “wrkgadm.resx”, which is how it is named in the project and text examples.

381 Error in Text
The 2 VB and C# examples near the bottom of the page have a code error in them. For the VB code, on the 3rd line:

Return My.Resources.Resource1.rbnWrkGadm

Should be:

Return My.Resources.wrkgadm.rbnWrkGadm

because that is how you named the resource in the project.

Similarly, for the C# code, the return statement should be “return wrkgadm.rbnWrkGadm;”.

833 Error in Text
The code to call SN.exe is slightly misleading because it needs to be run from the Visual Studio command prompt, not just any prompt. It requires that the VS tools in the path to work correctly. But the text just says command prompt, suggesting that any old windows command prompt would work, which is not the case.
833 Error in Text
The regasm code needs to be called from the VS command prompt, which should probably be called out in step 2, where it only says “Launch a command window.”
833 Error in Text
“The Registering managed code” section outlines four steps to registering the dll on the machine, however, when I do that it doesn’t necessarily always work for any old class. The class MUST have 2 things (see MSDN article:

a. Be COM Visible (which is eluded to several paragraphs earlier, but not directly called out that the Class is required to have the COM Visible attribute).
b. That the Class implements an Interface that must also be COM Visible. This is really the most important part, because the appendix implies that that interface is NOT required when it really is required.