Microsoft KB Archive/161345

= ACC97: Contents of the Acread80.wri Readme File =

Article ID: Q161345

The information in this article applies to:


 * Microsoft Access 97

SUMMARY
Novice: Requires knowledge of the user interface on single-user computers.

The Microsoft Access 97 Readme file, Acread80.wri, contains late-breaking information about issues related to setup, conversion, and use of the application. This file is installed by default to the C:\Program Files\Microsoft Office\Office folder on your computer.

The full text of the Microsoft Access 97 Readme file follows. For late-breaking information about other applications in the Microsoft Office 97, Professional Edition suite, see the Readme file for that application:

Application              Readme File Name --  Microsoft Office 97       Ofread8.txt

Microsoft Outlook 97     Olreadme.txt

Microsoft PowerPoint 97  Ppread8.txt

Microsoft Word 97        Wdread8.txt

Microsoft Excel 97       Xlread8.txt

MORE INFORMATION
Microsoft Access 97 Readme File, November 1996

(C) Copyright 1996 Microsoft Corporation

Contents
Installation


 * IMPORTANT: Disable Virus Protection Before Running Setup
 * Minimum System Requirements for Microsoft Office 97
 * Installing Microsoft Office 97 or Microsoft Access 97 on a Network
 * ODBC Fails When You Upgrade to Windows NT After Installation
 * Office 97 ValuPack Contains Additional Clip Art Folder
 * AddInPath Registry Entry
 * Uninstalling Help Doesn't Remove All Help Files
 * Installing the ODBC SQL Server Driver Help File
 * Installing Microsoft Access 95 After Installing Microsoft Access 97
 * Removing a Stand-alone Version of a Microsoft Office 97 Application After Installing Microsoft Access
 * Registration Error Installing Older Data Drivers
 * Uninstalling Several Microsoft Products Will Unregister Remote Data Object (RDO)
 * Several Northwind Reports Require Arial Narrow Font
 * Working with Sample Databases When You Run Microsoft Access from a CD-ROM
 * Web Browser Help File Has Same Name as Internet Explorer Help File
 * Keeping an Existing Version of Microsoft Access When You Install Microsoft Office 97
 * Removing Microsoft Access 95 After Installing Microsoft Access 97 Unregisters the Calendar Control

General


 * Supported ActiveX Controls
 * Microsoft Personal Web Server Generates 'Failed to get the expression service' Error
 * Changing Browsers Prevents Opening Home Pages in Northwind
 * Using ODBC and SQL Server Versions Prior to Version 6.5
 * Creating Charts with the Chart Wizard
 * Using the Web Post Option in the Publish to the Web Wizard Causes Microsoft Access to Fail on Windows NT Version 4.0

Jet/ISAM/DAO


 * Microsoft Exchange/Outlook Driver
 * Exporting Tables with Numeric Characters in Names to ODBC Sources
 * Using DAO Version 3.5 in Older OLE Automation Host Applications
 * RDO Appears in Reference List
 * dbFailOnError No Longer Rolls Back a Transaction
 * Can't Pass a QueryDef Object Name to an OpenRecordset Method Using ODBCDirect
 * ODBCDirect: GetRows Error 40035

Replication


 * Converting Replicated Databases
 * Opening a Replica Database Created Through Visual Basic for Applications Code

Conversion and Compatibility


 * Converting Expressions in VBA That Use the Line Continuation Character
 * Changes to Error Code Numbers
 * Change in How You Create Custom Menu Bars
 * Literal Dates Between the Years 1900 and 1929 May Cause Different Query Results

Programming and Visual Basic for Applications


 * Run-time Error Codes for FollowHyperlink and Follow Methods
 * Expression Service Fails with Broken Reference
 * Using the RefLibPaths Registry Key to Locate a Moved Project or Type Library
 * DDE and DDESend Functions Do Not Work Under Windows NT Version 3.51
 * Duplicate Declarations Compile Without Displaying a Warning
 * Using MsgBox Statements or Functions Can Interfere with ActiveX Control Mouse Events

Documentation


 * Updates to Microsoft Access Help
 * Updates to "Building Applications with Microsoft Access 97"
 * Updates to Northwind Sample Database

File List

IMPORTANT: Disable Virus Protection Before Running Setup
Some virus protection programs, such as VSAFE.COM and Norton Anti-Virus Autoprotect, can interfere with the Microsoft Office 97 or Microsoft Access 97 stand-alone version Setup program. If you use a virus protection program on your computer, please disable it before running Setup. (You can re-enable the virus protection program after Setup is complete.) Note -- If your virus-detection program starts automatically when you start Windows, you can disable it by restarting Windows while holding down the SHIFT key.

Minimum System Requirements for Microsoft Office 97
To use Microsoft Office 97, you need:


 * Personal or multimedia computer with a 486 or higher processor.
 * Microsoft Windows 95 operating system or Windows NT Workstation version 3.51 with Service Pack 5 or later (will not run on earlier versions).
 * For use on Windows 95: 8 MB of memory required to run applications individually (12 MB required to run Microsoft Access); more memory may be required to run additional applications simultaneously.
 * For use on Windows NT Workstation: 16 MB of memory required to run applications individually; more memory may be required to run additional applications simultaneously.
 * (PROFESSIONAL EDITION) 73-191 MB of hard disk space required; approximately 121 MB required for typical installation, depending on configuration. Use the Office Upgrade Wizard during Setup to maximize free disk space.
 * (STANDARD EDITION) 60-167 MB of hard disk space required; approximately 102 MB required for typical installation, depending on configuration. Use the Office Upgrade Wizard during Setup to maximize free disk space.
 * CD-ROM drive (coupon enclosed for 3.5-inch high-density disks). CD-ROM contains additional items such as Microsoft Internet Explorer, extra clip art, fonts, .avi files, and sounds not available on 3.5-inch disks.
 * VGA or higher-resolution video adapter (Super VGA, 256-color recommended).
 * Microsoft Mouse, Microsoft IntelliMouse, or compatible pointing device.

Additional items or services required to use certain features:


 * 9600-baud or higher modem (14.4 recommended).
 * Multimedia computer required to access sound and other multimedia effects.
 * Microsoft Mail, Microsoft Exchange, Internet SMTP/POP3, or other MAPI-compliant messaging software required to use e-mail.
 * Publish to the Web feature in Microsoft Access requires Microsoft Internet Information Server for Windows NT Workstation or Microsoft Personal Web Server for Windows 95.
 * Microsoft Exchange Server required for certain advanced workgroup

Installing Microsoft Office 97 or Microsoft Access 97 on a Network
For instructions on installing Microsoft Access 97 on a network, see the Network Readme file located on the CD-ROM at \Office\Netwrk8.txt. For additional information about network installations, you can obtain a copy of the Microsoft Office 97 Resource Kit, which is available wherever computer books are sold or directly from Microsoft Press.

ODBC Fails When You Upgrade to Windows NT After Installation
If you install Microsoft Office 97 or Microsoft Access 97 on Windows NT version 3.51, and then upgrade to Windows NT version 4.0, ODBC data sources will fail with a message that one of the components is a different version than the ODBC Driver Manager. To fix this problem, upgrade to Windows NT version 4.0 before installing Microsoft Office 97 or Microsoft Access 97. Or, reinstall Microsoft Office 97 or Microsoft Access 97 after upgrading to Windows NT version 4.0.

Office 97 ValuPack Contains Additional Clip Art Folder
In addition to the \ValuPack root folder, The ValuPack contains another root folder, \Clipart, that contains clip art and .avi files. If you are running Microsoft Office 97, Professional Edition, you can add these files to the Clip Gallery in Microsoft Word.

AddInPath Registry Entry
In the registry, there is an entry called AddInPath at \HKey_Local_Machine\Software\Microsoft\Office\8.0\Access\Wizards.

Microsoft Access uses this registry key as an alternate location for add-ins, such as the Import Text and Export Text wizards or ones that you add through the Add-In Manager. Although the value for the AddInPath is usually the default path for Msaccess.exe, it can be different, for example, on development machines, network installations, or CD-ROM installations.

Uninstalling Help Doesn't Remove All Help Files
If you do a complete installation of Microsoft Access and then uninstall Help by clearing the Help Topics check box in the Setup dialog box, several Help files (Vbaoff.* and Veenlr.*) in the \Program Files\Common Files\Microsoft Shared\Vba\ folder will remain on your machine.

You will need to manually delete these files if you are attempting to save disk space. If you do not manually delete these files, the keyword Help in the Module window will still partially work.

Installing the ODBC SQL Server Driver Help File
If you do a complete installation (click Custom in the Setup dialog box and click Select All) of Microsoft Access but only do a Typical installation of the other Office Professional applications, the ODBC SQL Server Driver Help file, Drvssrvr.hlp, is not installed. If you then use Microsoft Access Help and attempt to display the "Use the SQL Server Driver and the ODBC Help files" topic, you will not be able to see the topic and Help may not work.

To install the ODBC SQL Server Driver Help file, follow these steps:

1. Start Microsoft Office 97 Professional Setup.

2. Click Add/Remove.

3. In the Options box, select Data Access.

4. Click the Change Option button.

5. In the Options box, select Database Drivers.

6. Click the Change Option button.

7. In the Options box, make sure the box next to Microsoft SQL Server

Driver is selected. 8. Click OK.

9. Click OK again.

10. Click Continue.

Installing Microsoft Access 95 After Installing Microsoft Access 97
If you do a complete installation of Microsoft Access 97 and then attempt to do a complete installation of Microsoft Access 95, you may not be able to complete the installation. For example, if you get the error message "Unable to load installable ISAM; Can't load mspdox35.dll," you will need to install the Paradox driver for Microsoft Access 97 before you can successfully complete the installation of Microsoft Access 95. If this error occurs with other ISAM drivers, then install the specific driver that is causing the problem.

To install any ISAM driver, start the Microsoft Office 97 ValuPack, and go to the Data Access Pak component.

Installing Microsoft Access
If you install any stand-alone version of a Microsoft Office 97 application along with Microsoft Access 97, and then uninstall the stand-alone Microsoft Office 97 application, you might not be able to use Microsoft Access. For example, Microsoft Access closes when you click the option "Start using Microsoft Access," in the Office Assistant. In this case, you must reinstall Microsoft Access 97.

Registration Error Installing Older Data Drivers
You may get a registration error if you attempt to install an older data driver such as the Paradox or Lotus 1-2-3 driver after installing Microsoft Office 97. For instance, installing Microsoft Visual FoxPro version 5.0 after installing Microsoft Office 97 or Microsoft Access 97 will cause the registration error.

To work around this, install the new version of the appropriate driver in the Data Access Pak of the Office 97 ValuPack before installing Visual FoxPro version 5.0.

Uninstalling Several Microsoft Products Will Unregister Remote Data Object
If you have Visual Basic version 4.0 installed on your computer (which uses Remote Data Object (DAO) version 1.0), and either Microsoft Office 97, Microsoft Access 97 stand-alone version, Microsoft Excel 97 stand-alone version, or Visual Basic version 5.0 also installed (which use Remote Data Object (RDO) version 2.0), if you uninstall Visual Basic version 4.0, RDO version 2.0 will no longer work in Microsoft Office 97, Microsoft Access 97 stand-alone version, Microsoft Excel 97 stand-alone version, or Visual Basic version 5.0. If you uninstall Microsoft Office 97, Microsoft Access 97 stand-alone version, Microsoft Excel 97 stand-alone version, or Visual Basic version 5.0, RDO version 1.0 will no longer work in Visual Basic version 4.0.

To work around this, re-register the version of RDO you are using. To do this, for RDO version 1.0, on the Start menu, click Run, and then type regsvr32 msrdo32.dll in the Open box. For RDO version 2.0, on the Start menu, click Run, and then type regsvr32 msrdo20.dll in the Open box.

Several Northwind Reports Require Arial Narrow Font
When you preview or print the Catalog, Invoice, and Sales By Category reports in the Northwind sample database, some of the text will be truncated if you don't have the Arial Narrow font installed on your machine. You can install the Arial Narrow as well as other fonts from the Office 97 ValuPack.

Working with Sample Databases When You Run Microsoft Access from a CD-ROM
If you choose the Run From CD-ROM option when you install Microsoft Access, the sample databases remain in the CD-ROM \Office\Samples folder. To make changes to the sample databases, copy them to the \Program Files\Microsoft Office\Office folder on your hard drive. Then, rename Nwind.mdb to Northwind.mdb and Solution.mdb to Solutions.mdb.

Web Browser Help File Has Same Name as Internet Explorer Help File
The Help file for the Web Browser control is in the Office 97 ValuPack, in a file called Iexplore.hlp. You can open this file directly from the CD-ROM by double-clicking it. If you copy this file (along with Iexplore.cnt) to your machine, be careful not to overwrite the Help file for Internet Explorer version 3.0, which has the same name and is installed by default in the \Windows\Help directory.

Keeping an Existing Version of MS Access When You Install MS Office 97
If you want to keep your existing version of Microsoft Access on your computer in addition to Microsoft Access 97, you can use the Microsoft Office Upgrade Wizard located in the \ValuPack\OffClean folder of the Microsoft Office 97 CD-ROM before you install Microsoft Office 97 or Microsoft Access 97.

To start the Microsoft Office Upgrade Wizard, perform one of the following steps:


 * In Windows Explorer or in the File Manager, locate \ValuPack\OffClean\OffCln97.exe on the CD-ROM and then double-click OffCln97.exe.
 * In Microsoft Windows 95 or Microsoft Windows NT Workstation version 4.0, click Run on the Start menu and type d:\valupack\offclean\offcln97.exe.
 * In Microsoft Windows NT version 3.51, click Run on the File menu and type d:\valupack\offclean\offcln97.exe.

In the Upgrade Wizard, select the Let Me Decide Which Microsoft Office Applications Will Be Removed option. For more information about OffCln97.exe, see Microsoft ValuPack Help (Valupk8.hlp) in the \ValuPack folder on the CD-ROM.

Calendar Control
If you have Microsoft Access 95 installed on your machine, install Microsoft Office 97, Professional Edition or Microsoft Access 97 stand-alone version, then remove Microsoft Access 95 using Setup, Setup will remove and unregister the Microsoft Access 95 Calendar control (Msacal70.ocx), but also inadvertently unregister the Microsoft Access 97 Calendar control (Mscal.ocx).

To fix the problem, you can re-register the Microsoft Access 97 Calendar control with the following MS-DOS commands:

Windows 95: regsvr32.exe \windows\system\mscal.ocx

Windows NT: regsvr32.exe \windows\system32\mscal.ocx

Supported ActiveX Controls
The following table lists ActiveX controls that have been tested and verified for Microsoft Access 97.

There may be additional controls available from the Insert ActiveX Control dialog box (choose the ActiveX Control command on the Insert menu in form or report Design view) or the menu displayed from the More Controls button in the toolbox, but they may not work with Microsoft Access 97. You may also see several Forms version 2.0 controls on your machine. Although these ActiveX controls work in Microsoft Access 97, you don't need to use them because they provide less functionality than the native Microsoft Access form and report controls.

ActiveX control name   Installed with

Calendar Control 8.0           Microsoft Access 97 Chart Object Control           Microsoft Access 97 Common Dialog Control          Microsoft Office 97 Developer Edition (ODE) ImageList Control              ODE ListView Control               ODE Microsoft Rich Textbox Control ODE Microsoft Web Browser Control  Internet Explorer 3.0 (Also in the                                 Office 97 ValuPack) MSInet Control                 ODE ProgressBar Control            ODE Slider Control                 ODE StatusBar Control              ODE TabStrip Control               ODE Toolbar Control                ODE TreeView Control               ODE UpDown Control (Replaces the   ODE SpinButton Control) WinSock Control                ODE

service' Error
If you use Microsoft Personal Web Server on Windows 95 to run a Web application published by Microsoft Access 97, Personal Web Server may no longer be able to connect to the Microsoft Access database after the first 50 to 60 queries. The Microsoft Access ODBC driver will return the error message, "Failed to get the expression service." To fix the problem, obtain the updated file, Rpcrt4.dll version 4.00.953 (dated 7/23/96 or later), and replace the existing one on your Windows 95 machine.

You can find this update in Rpcrtupd.exe, a self-extracting file, on the following services:


 * The Microsoft home page on the Internet, http://www.microsoft.com/. (On the Help menu, point to Microsoft On The Web, and then click Microsoft Home Page. Click the Support icon. Click Search the Knowledge Base. Select Windows 95 And Internet Explorer in step 1, enter kbfile rpcrtupd.exe in step 3, and then click GO!. Open the article, and then click the button to download the file.)
 * Anonymous FTP on the Internet. (Type ftp ftp.microsoft.com, type cd softlib/mslfiles, and then type get rpcrtupd.exe.)

Changing Browsers Prevents Opening Home Pages in Northwind
If you remove Microsoft Internet Explorer from your machine, install Netscape Navigator, and then attempt to open an HTML home page in Northwind, you will receive the following message: "Unable to open filename. No program is registered to open this file."

To fix this problem, run Windows Explorer, select any HTML file, hold down SHIFT and right-click the HTML file, and then click the Open With command. Click Netscape from the list of available programs, and then select the Always Use This Program To Open This Type Of File check box.

Using ODBC and SQL Server Versions Prior to Version 6.5
The file Instcat.sql is used with the SQL Server ODBC Driver and is stored on the CD-ROM in the \Os\System folder. Instcat.sql is an SQL command file that installs catalog stored procedures on the Microsoft SQL Server. If you plan on using the SQL Server ODBC Driver included in Microsoft Access 97, and you are running Microsoft SQL Server prior to version 6.5, you will need to run this command file on the server. For more information, search for the keyword "Instcat.sql" in the Microsoft SQL Server Books Online. Note that the functionality provided in the file Instcat.sql is integrated into SQL Server version 6.5 and later.

Creating Charts with the Chart Wizard
When a chart on a form or report displays data that is related to a specific record on the form or report, you must include the field that links the chart and the form or report in the query for the chart. However, if you don't use the linking field as a displayed field on the chart, the Chart Wizard doesn't add it to the query. To work around this problem, you can add the linking field to the query for the chart after you create the chart. For an example, see "Updates to Northwind Sample Database" in the Documentation section.

Microsoft Access to Fail on Windows NT Version 4.0
On Windows NT version 4.0, if you run the Publish to the Web Wizard, and then choose one or more of the Web Post Options, Microsoft Access fails. Alternatively, you can copy the files created by the Publish to the Web Wizard using Windows Explorer.

Microsoft Exchange/Outlook Driver
The Microsoft Exchange/Outlook driver (Msexch35.dll) is available in the Office 97 ValuPack. You can use this driver to access data (read-only) in mail folders and address books stored in the Windows Messaging data store of Microsoft Exchange and Microsoft Outlook.

You can use Data Access Objects (DAO) to program the Microsoft Exchange/Outlook driver. You must install the Messaging Application Programming Interface (MAPI) on your machine. Also, you must use a new connection string keyword, MAPILEVEL=, which specifies the path to the Exchange/Outlook container that is the parent of the folder you want to access. For example, to link to the Exchange folder named Dave in the Dev folder under the People folder in the mailbox Mailbox - Sam Smith, define the connection string as, "Exchange 4.0;MAPILEVEL=Mailbox - Sam Smith|People\Dev;". Then, use the OpenTable action or method to specify the table name as "Dave." There is an additional connect string parameter, TABLETYPE, you can use to specify either an Address book or a folder, where 1 = AddressBook and 0 = folder (this is the default).

To open a Microsoft Exchange/Outlook folder directly, use the OpenDatabase method and specify values for the following parts: database, options = True, read-only = True, and a dbname data source. The following code example uses the OpenDatabase method to open a Microsoft Exchange/Outlook folder named Barbara and count the number of messages received from a user named Jim Harris:

Public Sub OpenExchangeFolder

Dim dbsExchange As Database, intCount As Integer Dim rst As Recordset, str As String

str = "Exchange 4.0;MAPILEVEL=" _ & "Dave Jones (Exchange)|People\Important;TABLETYPE=0;"

Set dbsExchange = OpenDatabase _ ("C:\Data\Temp.mdb", 0, 0, str)

Set rst = dbsExchange.OpenRecordset("Barbara")

rst.MoveFirst While Not rst.EOF If rst!From = "Jim Harris" Then intCount = intCount + 1 End If        rst.MoveNext Wend

rst.Close dbsExchange.Close

End Sub Important:


 * You cannot directly link to a Microsoft Exchange database that's opened exclusively. If you need to work around this, create a back-end database containing the link to the Exchange database.
 * When you use the OpenDatabase method to open a folder in a Microsoft Exchange/Outlook mailbox, you must supply the path and name of an existing Microsoft Jet database as the first argument. The Microsoft Exchange/Outlook driver creates system tables in this database to store information about the structure of the Microsoft Exchange folders being accessed, including all the new fields you've appended to these folders. It is usually best to create a new, empty Microsoft Jet database for this purpose and use this same database each time you want to access data in a folder. If you delete this database and use a new one, all the information about fields you added to the folders will be lost, and you will need to recreate them.
 * If the Microsoft Exchange/Outlook folder was created by a client other than the Microsoft Exchange/Outlook driver, and not all of the default MAPI columns are present, the Microsoft Exchange/Outlook driver will not be able to read the folder. For example, if an application is a MAPI client and writes a new folder with a number of defined columns other than the MAPI default columns, the Microsoft Exchange/Outlook driver will not be able to read the folder.

Exporting Tables with Numeric Characters in Names to ODBC Sources
If you use an SQL statement, SELECT/INTO, to export Microsoft Access tables that have a numeric character as the first character in their names to an ODBC source, the numeric character is replaced with an underscore (_). For example, if you export "123Table" to SQL Server, the exported table will be named "_23Table" in SQL Server.

Using DAO Version 3.5 in Older OLE Automation Host Applications
Data Access Objects (DAO) version 3.5 is designed to work with Visual Basic for Applications version 5.0. Although DAO 3.5 will appear in Office 95 or Visual Basic version 4.0 or earlier reference lists, you can't use DAO 3.5 in either Microsoft Office 95 or Visual Basic version 4.0 or earlier.

RDO Appears in Reference List
If you have installed ODBCDirect on your machine (in Custom Setup, select Data Access, click Choose Options, and then select Data Access Objects For Visual Basic), Remote Data Objects (RDO) appears in the reference list, but you can't program RDO unless you purchase software, such as Visual Basic version 5, Enterprise, that explicitly installs it for development. You can enable the reference to RDO, but you will receive OLE Automation errors when you use the RDO model in code.

dbFailOnError No Longer Rolls Back a Transaction
In previous releases of Data Access Objects (DAO), if you executed SQL statements, they were internally treated as transactions. If you executed a statement with the dbFailOnError flag on and the query failed, the operation was rolled back. For performance reasons, an SQL statement is no longer treated as a transaction. Therefore, if an SQL query fails in Microsoft Access, an incomplete operation may occur. If you think an error may occur, you should explicitly use the statement within a transaction by using the BeginTrans method and the CommitTrans method. However, note that explicit transactions may slow query performance.

ODBCDirect
When you use ODBCDirect, you cannot open a Recordset object from a QueryDef method object name. Instead, you should perform the OpenRecordset method directly from the QueryDef object. This is because QueryDef objects in ODBCDirect are not permanent objects as they are in a Microsoft Jet database.

ODBCDirect: GetRows Error 40035
You should not use the GetRows method with long value fields. If you use the GetRows method on an ODBCDirect Recordset object containing long value fields (Memo or Long Binary), you will get an error variant stored in the array wherever the long value field should have been. If you read the array data value, it will be Error 40035 and the data type will be Variant.

Converting Replicated Databases
Microsoft Access 97 can't open a replica created with Microsoft Access 95. You must convert the Design Master and associated replicas to Microsoft Access 97, or first open the replica in the version in which it was created and try again.

You can enable a Microsoft Access 95 replica to run using Microsoft Access 97. If you open an enabled Microsoft Access 95 replica in Microsoft Access 97 and there is a synchronization pending, synchronization will not occur. You will be warned that there is a synchronization pending that cannot occur until the replica is opened and synchronized using Microsoft Access 95.

Code
If you make a database replicable using Data Access Objects (DAO) through Visual Basic for Applications, then move the database to a different directory without first opening it in Microsoft Access, then you will receive an error when you try to open the database. If you create a replica using DAO, then try to open the replica in Microsoft Access before opening the Design Master, you will also get an error. In both cases, some commands may not be available when you open the database. To solve this problem, when you replicate a database using DAO, open the Design Master in Microsoft Access and synchronize all replicas before moving the Design Master or opening a replica.

Converting Expressions in VBA That Use the Line Continuation Character
Microsoft Access 97 sometimes doesn't correctly convert expressions in VBA that use the line continuation character (_) and displays a compile error when you try to execute the code. You can correct this problem after you convert the database to Microsoft Access 97. Open any module in Design view and then click the Compile And Save All Modules command on the Debug menu. When Microsoft Access finds an expression that it can't compile, edit the expression to restore its original syntax.

Changes to Error Code Numbers
Some error codes have changed and this may affect existing applications. For example, when you reference a PaletteSource property of a text box that doesn't exist, Microsoft Access 95 returned error message 2455, "Application-defined or object-defined error," but Microsoft Access 97 returns error message 438, "Object doesn't support this property or method." After you convert your database applications to Microsoft Access 97, some Visual Basic for Application code might not work because you are no longer trapping the correct error numbers. To fix this problem, test your converted application and make changes to error events where necessary so they are trapping the correct error numbers.

Change in How You Create Custom Menu Bars
When you create a custom menu bar, you can use the Customize dialog box. (On the View menu, point to Toolbars and click Customize). If you create a custom menu bar using the Built-in Menus category on the Commands tab in the Customize dialog box, any changes you make to the custom menu will also be made to the built-in menu. Similarly, any changes you make to the built-in menu will also be made to the custom menu. To avoid making unintended changes to menus, use the New Menu category instead of the Built-in Menus category.

Results
If you have used a literal date specifying the years 1900 through 1929 as part of your criteria in a query, and you created this query in a version of a Microsoft Access database prior to Microsoft Access 97, when you convert the query to Microsoft Access 97, it may return different results. You may even see different results from the same query if the query is run under an enabled database. This is caused by the new interpretation of year dates ending in the digits 00 through 29 as the year 2000.

To work around this, change the date to cdate("date as string") in the criteria to force Microsoft Access to accept the correct date.

Run-time Error Codes for FollowHyperlink and Follow Methods
The following table summarizes errors that can occur when you use the FollowHyperlink method of the Application object or the Follow method of the Hyperlink object. These error codes explain why you can't connect to a specific World Wide Web site and occur because of conditions outside your application.

VBA Err.Number  VBA Err.Description

-2146697214    The address of this site is not valid. Check the address and try again. -2146697213    Cannot start an Internet session. -2146697212    Cannot connect to the Internet server. -2146697211    Cannot locate the Internet server or proxy server. -2146697210    The site reports that the item you requested could not be found. (HTTP/1.0 404) -2146697209    The Internet site reports that a connection was established but the data is not available. -2146697208    Cannot download the information you requested. (WebDownloadFailure) -2146697207    The item you requested requires proper authentication. (HTTP/1.0 401) -2146697206    The Internet site cannot return the object you request. (HTTP/1.0 403) -2146697205    The connection to this Internet site took longer than the allotted time. -2146697204    The site reports that the request is not valid. -2146697203    The required Internet protocol is not installed on your computer, or the Internet address you requested may not be valid. -2146697202    A security problem has occurred. -2146697201    Cannot open the specified file. -2146697200    Cannot start the program needed to open this file. -2147221018    No program is registered to open this file. -2147221164    No program is registered to open this file. -2147467260    The hyperlink cannot be followed to the destination. -2147221020    The address of this site is not valid. Check the address and try again. -2147221014    Cannot open the specified file. -2147012891    The address of this site is not valid. Check the address and try again. -2147012868    The site reports that the item you requested could not be found. (HTTP/1.0 404) -2147012867    Cannot connect to the Internet server. -2147012894    The connection to this Internet site took longer than the allotted time. -2147012888    The required Internet protocol is not installed on your computer, or the Internet address you requested may not be valid. You can trap these errors and display the appropriate error message as the following example shows.

Function GetUserAddress As Boolean Dim strInput As String

On Error GoTo Error_GetUserAddress strInput = InputBox("Enter a valid address") Application.FollowHyperlink strInput,, True GetUserAddress = True

Exit_GetUserAddress: Exit Function

Error_GetUserAddress: Dim Number As Long Number = Err.Number Select Case Number Case -2146697214 MsgBox "The address of this site is not valid. Check the                   address and try again." Case -2146697213 MsgBox "Cannot start an Internet session." ' And so on, for each error.... End Select GetUserAddress = False Resume Exit_GetUserAddress End Function

Expression Service Fails with Broken Reference
If you set a reference from a Microsoft Access 97 database to any project or type library and the reference is subsequently broken, then your database may not behave as expected. Your code may not run properly, and expressions in queries and on forms may also fail. To fix this problem, either remove the reference or reestablish the reference to the project or type library.

Library
If you set a reference to a project or type library from Microsoft Access and then move the file that contains that project or type library to a different folder, Microsoft Access will attempt to locate the file and reestablish the reference. If the \RefLibPaths key exists in the registry, Microsoft Access will first search there. You must add this key to the registry and then add the names and locations of any add-ins or libraries as string value beneath that key. Create the \RefLibPaths key in H_KEY_LOCAL_MACHINE\Software\Microsoft\Office\8.0\Access. Within the key, add a string value that specifies the name and location of the file to which the reference is set. The name should be the file name, including the extension, and the location should be the path plus the file name. For example, if you have set a reference to the Northwind sample database, you can add the following values:

Name: Northwind.mdb Data: C:\Program Files\Microsoft Office\Office\Samples\Northwind.mdb

DDE and DDESend Functions Do Not Work Under Windows NT Version 3.51
The DDE and DDESend functions do not work under Windows NT version 3.51. For example, you might use the following function as the ControlSource property of a text box on a form: =DDESend("Excel", "Sheet1", "R1C1", "Hello"). If Microsoft Excel isn't running when you open the form in Form view, Microsoft Access displays a message asking if you want to start Microsoft Excel. When you click Yes, Microsoft Excel won't open if you are running Windows NT version 3.51. You can avoid this problem by starting Microsoft Excel before you open the form in Form view.

These functions work properly on later versions of Windows NT.

Duplicate Declarations Compile Without Displaying a Warning
If you create duplicate declarations in two modules, and then use the Compile And Save All Modules command on the Debug menu in the Module window, Microsoft Access doesn't display a warning message. Having duplicate declarations in two modules may cause unexpected behavior in your application. There is no way to predict which declaration Microsoft Access will use when you run your application. If you update only one of the declarations, you may not see the changes in your application that you expect because the other declaration may be used.

To avoid this problem, do not create duplicate declarations in two modules.

Mouse Events
Using MsgBox statements or functions in certain events can interfere with other mouse events generated by Microsoft Access or an ActiveX control. For example, using Visual Basic code containing a MsgBox statement in the BeforeClick event of a TabStrip control prevents the TabStrip control's Click event from being triggered.

Updates to Microsoft Access Help
In the example for the "Hyperlink Property" topic, replace:

Sub CreateHyperlink(ctlSelected As Control, strSubAddress As String,     Optional strAddress As String) with:

Sub CreateHyperlink(ctlSelected As Control, strSubAddress As Textbox,     Optional strAddress As Textbox) In the "Convert Access Basic Code to Visual Basic" topic, ignore the section entitled "Renaming a Database." This is no longer true for Microsoft Access 97.

In the "DoMenuItem Action Commands Not Available with the RunCommand Action" topic, remove the following menu command from the table. (The topic is available from the DoMenuItem Action and RunCommand Action topics.)

View  Menu name     Menu command      Use instead

Form  ViewRecords   AllowEditing      Command not available. Use AllowEdits, AllowAdditions, AllowDeletions, and DataEntry properties. In the same topic, add the following menu commands to the table.

View          Menu name   Menu command        Use instead

Module        View        Next Procedure      Command not available. Navigate in the Module window. Module        View        Previous Procedure  Command not available. Navigate in the Module window. Table Design  Help        Cue Cards           Command not available. For all other views, this command now brings up the Answer Wizard. Table Design  Help        Technical Support   Command not available. For all other views, this command now brings up the Answer Wizard. In the "Create a label by dragging and dropping an Internet shortcut" topic, in step 2, remove the text "an icon on your desktop or."

In the "Create a hyperlink by copying and pasting a hyperlink or hyperlink address" topic, replace step 4 with the following text:

"4. In the datasheet, place the insertion point in the field that  precedes the Hyperlink field, and then press TAB to move to the   Hyperlink field. In the form, place the insertion point in the text box   or other control that precedes the text box that's bound to a Hyperlink   field or the combo box that displays a hyperlink in its text box   portion. Then press TAB to move to the text box or combo box that   displays the hyperlink." In the "Microsoft Access Objects" topic, the Application object also contains the References collection, and Forms and Reports objects also contain a Modules object.

In the "Connect Property" topic in the second table, replace the specifier, "Excel 97," with "Excel 8.0."

In the "View the online Getting Results book" topic, replace the two paragraphs in the second bullet with the following text:

"If you are not running the Office Shortcut Bar, insert the CD in your  CD-ROM drive or connect to the network drive you installed Office from.   Double-click the Cdonline folder on the CD or in the Microsoft Office   folder on the network, and then double-click the file Result97.htm." In the "Import or link data from a spreadsheet" topic, ignore the phrase at the end of the second paragraph "or its column order is the same." You cannot use column order as the criteria for appending an imported spreadsheet to an existing table.

In the "Initialize, ItemAdded, ItemRemoved, Terminate Event Procedures Example" and "Remove Method (References Collection) Example" topics, the Calendar control library is incorrectly called Mscal; It should be CalendarObjects. You will need to revise the code examples that use the incorrect name to make them work.

In the "OutputTo Method" topic, change the "acFormatActiveXServer" intrinsic constant of the outputformat argument to "acFormatASP."

In the "Set Options from Visual Basic" topic in the Hyperlinks/HTML Tab table, replace the string argument "ActiveX Session Timeout" with "Active Server Pages Session Timeout" and "ActiveX Server URL" with "Active Server Pages URL."

Delete the topic, "Add a built-in menu to a toolbar or menu bar."

In the "Create a custom menu bar for the current database" topic, step 7 should read:

"To complete the menu bar, add custom menus. For more information, click  (button)." In the "Export a datasheet to static HTML format" topic, remove the following item from the Notes:

"The layout of the HTML page simulates the page orientation and margins  set for the datasheet. To change these settings, display the datasheet,   and then use the Page Setup command on the File menu before you export   it. For more information, click (button)." Ignore the topic, "UserForm Object, UserForms Collection" and all related jumps. Microsoft Access does not support either the UserForm object or the UserForms collection.

In the "Callback Property" topic, in the Example, replace the information with the following:

This example shows an Office Assistant balloon that contains a list of  three printers. After the user clicks a printer, the ProcessPrinter procedure runs and the balloon closes.

Sub shar Set bln = Assistant.NewBalloon With bln .Heading = "Select a Printer." .Labels(1).Text = "Network Printer" .Labels(2).Text = "Local Printer" .Labels(3).Text = "Local Color Printer" .BalloonType = msoBalloonTypeButtons .Mode = msoModeModeless .Callback = "ProcessPrinter" .Button = msoButtonSetNone .Show End With End Sub A callback procedure is passed three arguments: the Balloon object whose Callback property was assigned the callback procedure's name, the index of the label button or balloon button the user clicked, and - if the assistant is being controlled by a wizard - an integer that uniquely identifies that wizard.

Sub ProcessPrinter(bln As Balloon, ibtn As Long, _     iPriv As Long) Assistant.Animation = msoAnimationPrinting Select Case ibtn Case 1 ' Insert printer-specific code Case 2 ' Insert printer-specific code Case 3 ' Insert printer-specific code End Select bln.Close End Sub In the "Checkboxes Property" topic, in the Example, replace the information with the following:

It's possible for a user to select more than one check box before clicking the OK button. If you anticipate this happening, you can alter the code to account for it. The following example evaluates each check box individually.

With Assistant.NewBalloon .Heading = "Regional Sales Data" .Text = "Select the region(s) you want to print." For i = 1 To 3 .CheckBoxes(i).Text = "Region " & i        Next .Button = msoButtonSetOkCancel If .Show = msoBalloonButtonOK Then For i = 1 To 3 If .CheckBoxes(i).Checked = True Then sstring = sstring & " Region " & i              End If            Next MsgBox "The report will print section(s): " & sstring Else MsgBox "The report will print no sections." End If     End With

Updates to 'Building Applications with Microsoft Access 97'
The following changes occurred after the book went to press:

On page 81, the Internet address given for the Microsoft Access page of the Microsoft Support Online Web site should be http://support.microsoft.com/support/access/default.asp.

On page 622, replace the last two sentences in the second paragraph under the heading "Adding the WebBrowser Control to a Form," with:

"Run Msie30.exe to install Microsoft Internet Explorer 3.0 for both  Microsoft Windows 95 and Microsoft Windows NT Workstation. The Microsoft   Internet Explorer 3.0 Setup program will detect which version of Windows   you are using and install the appropriate files."

Updates to Northwind Sample Database
Microsoft Access doesn't update the chart in the "Sales by Category" report correctly when you preview or print the report from the Database window. To fix this problem, open the report in Design view, and display the property sheet for the SalesChart control. Click the Build button next to the RowSource property box to display the query. Add the CategoryID field to the query design grid, and then save and close the query.