XL97: Run-Time Error 40009 When You Run DAO Macro
This article was previously published under Q172322 On This PageSYMPTOMS
If you run a Visual Basic for Applications macro that uses Data Access
Objects (DAO) in Microsoft Excel 97, you may receive the following error
message:
Run-time error '40009':
This error message occurs when the macro attempts to copy the contents of a
recordset into the active worksheet.
No current row. CAUSE
This problem occurs when one of the following conditions is true:
RESOLUTION
To resolve this problem, obtain Microsoft Office 97 Service Release
2 (SR-2).
For additional information about SR-2, please see the following article in the Microsoft Knowledge Base: 151261 (http://support.microsoft.com/kb/151261/EN-US/) OFF97: How to Obtain and Install MS Office 97 SR-2
To temporarily work around this problem, use one of the following
workarounds.
Method 1: Field of Type BIGINT Is Included in RecordsetIf the recordset contains a field of type BIGINT, you must change the type of the field or exclude the field from the recordset, and then run the macro again.Method 2: Microsoft Visual Basic 5.0 Is Installed on Your ComputerTo work around this problem, remove or rename the Dao350.dll file that was installed by Microsoft Visual Basic 5.0, and install a new copy of the file that is included with Office 97 or Excel 97.NOTE: Because there are several versions of Windows, the following steps may be different on your computer. If they are, please consult your product documentation to complete these steps. To rename or remove the existing file, follow these steps.
Method 1: Download the Revised Dao350.dll file A revised Dao350.dll file is available. This file is fully compatible with Microsoft Visual Basic for Applications macros that use DAO and is not replaced by Microsoft Visual Basic version 5.0. For additional information about this utility, please see the following article in the Microsoft Knowledge Base: 182596 (http://support.microsoft.com/kb/182596/EN-US/) XL97: Revised Dao350.dll File for "No current row" Error
Method 2: Run Setup Again
Run the Microsoft Office 97 or Microsoft Excel 97 Setup program and click Reinstall. The Setup program reinstalls all missing files, including the Dao350.dll file. When the Setup program is finished, open Excel 97 and verify that the macros that use DAO work correctly. Method 3: Replace the Dao350.dll File Copy the Dao350.dll file from your Office 97 or Excel 97 compact disc (CD) to the correct folder on your hard disk. To do this, follow these steps:
NOTE: If you reinstall Microsoft Visual Basic 5.0, the Dao350.dll file is replaced again, and you need to perform these steps again. However, if you have copied the revised Dao350.dll file that is available in the Microsoft Download Center, the file is not replaced again. STATUS
Microsoft has confirmed this to be a problem in the Microsoft products
listed at the beginning of this article. This problem was corrected in
Microsoft Office 97 Service Release 2 (SR-2).
MORE INFORMATION
Both Microsoft Excel 97 and Microsoft Visual Basic 5.0 both include copies
of the Dao350.dll file. The version numbers of these files are listed in
the following table.
Product Version of Dao350.dll -------------------------------------------------- Excel 97 or Office 97 3.50.3428.0 Visual Basic 5.0 3.50.3602.0When you install Visual Basic 5.0, the version number of its Dao350.dll file is later than the version of the file that is installed with Excel 97; therefore it replaces the Dao350.dll file that is included in Excel 97. If you reinstall Excel 97 or Office 97, the earlier Dao350.dll file does not replace the later Dao350.dll file. This is why you cannot correct the problem that is described in this article by simply reinstalling Excel 97 or Office 97.
| Article Translations
|
Back to the top
