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.

ACC2000: "There Is No Object in This Control" Error Converting Access 2000 Database to Access 97


View products that this article applies to.

This article was previously published under Q202312
For a Microsoft Access 2002 version of this article, see 286345 (http://support.microsoft.com/kb/286345/EN-US/ ) .

Moderate: Requires basic macro, coding, and interoperability skills.

This article applies only to a Microsoft Access database (.mdb).

↑ Back to the top


Symptoms

After converting a Microsoft Access 2000 database to Microsoft Access 97, you receive the following error message when you open a form or report in the new Microsoft Access 97 database:
There is no object in this control.

↑ Back to the top


Cause

The form or report contains one or more ActiveX controls. The error occurs because Microsoft Access 2000 uses the IPersistStream interface for inserting and storing ActiveX controls while Microsoft Access 97 uses the IPersistStorage interface.

↑ Back to the top


Resolution

In order for Microsoft Access 97 to recognize ActiveX controls inserted by Microsoft Access 2000, the ActiveX control must be inserted using the IPersistStorage interface. Microsoft Access 2000 uses the IPersistStorage interface if you create the ActiveX control by pasting it into the form or report. To resolve the problem, follow these steps:
  1. Start Microsoft Access 2000 and open your Microsoft Access 2000 database.
  2. Individually open each form or report that contains an ActiveX control.
  3. Individually select each ActiveX control on the form or report.
  4. On the Edit menu, click Cut.
  5. On the Edit menu, click Paste.
  6. After pasting all ActiveX controls, close and save each form and report.
  7. On the Tools menu, point to Database Utilities, point to Convert Database, and then click To Prior Access Database Version.
  8. Type a file name for the new Access 97 database, and then click Save.
  9. Start Microsoft Access 97.
  10. Open the Microsoft Access 97 database that you created in step 8.
  11. Open a form or report that contains an ActiveX control.

    Note that you can open the form or report.

↑ Back to the top


Status

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

↑ Back to the top


More information

Steps to Reproduce Problem

CAUTION: If you follow the steps in this example, you modify the sample database Northwind.mdb. You may want to back up the Northwind.mdb file and follow these steps on a copy of the database.

  1. Start Microsoft Access 2000.
  2. Open the sample database Northwind.mdb.
  3. Open a new blank form in Design view.
  4. On the Insert menu, click ActiveX control.
  5. Click the Calendar Control 9.0, and then click OK.
  6. Close and save the form.
  7. On the Tools menu, point to Database Utilities, point to Convert Database, and then click To Prior Access Database Version.
  8. Type a file name for the new Access 97 database, and then click Save.
  9. Start Microsoft Access 97.
  10. Open the Microsoft Access 97 database that you created in step 8.
  11. Open the form that you saved in step 6. Note that you receive the message:
    There is no object in this control.

↑ Back to the top


Keywords: KB202312, kbpending, kbbug

↑ Back to the top

Article Info
Article ID : 202312
Revision : 2
Created on : 7/15/2004
Published on : 7/15/2004
Exists online : False
Views : 254