Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

You receive a "There is no object in this control" error message when you open an Access 97 database that you converted from an Access 2003 database


View products that this article applies to.

Symptoms

Explains a problem that may occur when you convert an Access 2003 database to an Access 97 database. If you try to open a form or a report in the Access 97 database, you receive an error message. The problem occurs if the form or the report have an ActiveX control.


When you convert a Microsoft Office Access 2003 database to a Microsoft Access 97 database and then you open a form or a report in the new Access 97 database, you may receive the following error message:
There is no object in this control.

↑ Back to the top


Cause

This bug occurs if the form or the report contains at least one Microsoft ActiveX control. Access 2003 uses the IPersistStream interface to insert and to store ActiveX controls. However, Access 97 uses the IPersistStorage interface that contains the persistence information to insert and to store ActiveX controls. The mismatch between the interface that Access 2003 uses and the interface that Access 97 uses causes the error that is mentioned in the "Symptoms" section of this article.

↑ Back to the top


Resolution

To resolve this bug, follow these steps.

Note The following steps modify your Access 97 database. Microsoft recommends that you back up your database before you continue.
  1. Start Access 97.
  2. Open the Access 97 database that you converted from an Access 2003 database.

    You receive the following message:
    Microsoft Access has converted the code in 'Drive:\Path\File Name.mdb' to your current version of Visual Basic.
    To improve the performance of the Access 97 database, follow these steps:
    1. Open an available module in the Access 97 database in Design view.
    2. On the Debug menu, click Compile and Save All Modules.
  3. Click OK.
  4. Open a form that contains at least one ActiveX control.

    You may receive the following error message:
    There is no object in this control.
  5. Click OK.

    When you click OK, the form opens in Form view. The form contains an empty white control for the ActiveX control.
  6. On the View menu, click Design View.

    You may receive the error message that is mentioned in step 4 again.
  7. Click OK.

    The form opens in Design view.
  8. Right-click the ActiveX control, and then click Properties.
  9. Notice the values that are assigned to the following properties:
    • Name
    • Enabled
    • Left
    • Top
    • Width
    • Height
    • All Event properties
  10. Delete the ActiveX control.
  11. Re-insert the ActiveX control that is included with Access 97 or with Microsoft Office 97 Developer Edition.

    For example, if the form or the report contains Microsoft Calendar Control 10.0 or a later version for Access 2003, delete the control and then re-insert Microsoft Calendar Control 8.0 (the version that is included with Access 97).

    To insert an ActiveX control, follow these steps:
    1. On the Insert menu, click ActiveX Control.
    2. In the Insert ActiveX Control dialog box, click the appropriate control on the list, and then click OK.
  12. View the properties of the new ActiveX control, and then assign the respective values to these properties based on your information from step 9.

↑ Back to the top


Status

Microsoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.

↑ Back to the top


More information

Steps to Reproduce the Behavior

  1. Start Access 2003.
  2. Create a new Access 2003 database.
  3. In the Database window, click Forms under Objects.
  4. In the right pane, double-click Create Form in Design view.
  5. On the Insert menu, click ActiveX Control.
  6. Click to select Calendar Control 10.0 or a later version, and then click OK.
  7. Close the form. Save the form as Form1.
  8. In the Database window, point to Database Utilities, point to Convert Database, and then click To Access 97 File Format on the Tools menu.

    Note You may receive the following message:
    Saving the database to the previous version of Access will create a new database that contains none of the security information that you have set. Are you sure you want to proceed?
    Click Yes.
  9. In the Convert Database Into dialog box, type the appropriate file name for the new Access 97 database, and then click Save.

    Note After this conversion, you receive the following message:
    After you have converted this file to Access 97 File Format, any functionality specific to Access 2000 or Access 2002 or later will be lost.

    For more information about conversion, click Help.
    Click OK.
  10. Start Access 97.
  11. Open the Access 97 database that you created.
  12. Open Form1.

    When you try to open the form, you receive the error message that is mentioned in the "Symptoms" section of this article.

↑ Back to the top


Keywords: KB824270, kberrmsg, kbconversion, kbdatabase

↑ Back to the top

Article Info
Article ID : 824270
Revision : 2
Created on : 9/17/2011
Published on : 9/17/2011
Exists online : False
Views : 352