Las funciones de Visual Basic para Aplicaciones (VBA) se interrumpen en una base de datos con referencias que faltan

Número de KB original: 283806

Nota:

Requiere conocimientos básicos de macros, codificación e interoperabilidad. Este artículo se aplica a una base de datos de Microsoft Access (.mdb y .accdb) y a un proyecto de Microsoft Access (.adp).

Síntomas

Si tiene un procedimiento que contiene una función de Visual Basic para Aplicaciones y la base de datos contiene una referencia a una biblioteca de objetos o biblioteca de tipos que falta, puede recibir uno de los siguientes mensajes de error al compilar los módulos o ejecutar el procedimiento:

Mensaje de error 1

La base de datos o el proyecto de Microsoft Access contiene una referencia perdida o rota al nombre de archivo<>.
* Para asegurarse de que la base de datos o el proyecto funcionan correctamente, debe corregir esta referencia.
* Para obtener información sobre cómo corregir esta referencia, haga clic en Ayuda.

Mensaje de error 2

Error de compilación:
No se encuentra el proyecto o biblioteca

Causa

La base de datos contiene una referencia a una base de datos, una biblioteca de tipos o una biblioteca de objetos marcada como MISSING: <referencename> en el cuadro de diálogo Referencias.

Solución

Para quitar la referencia que falta, siga estos pasos:

  1. Abra la base de datos.
  2. Presione ALT+F11 para abrir la Editor de Visual Basic.
  3. En el menú Herramientas, haga clic en Referencias.
  4. Haga clic para desactivar la casilla de la biblioteca de tipos o la biblioteca de objetos marcada como MISSING: <referencename>.

Una alternativa a quitar la referencia es restaurar el archivo al que se hace referencia a la ruta de acceso especificada en el cuadro de diálogo Referencias. Si el archivo al que se hace referencia está en una nueva ubicación, borre la referencia MISSING: <referencename> y, a continuación, cree una nueva referencia al archivo en la nueva carpeta.

Nota:

En una aplicación en tiempo de ejecución de Access, no se pueden ver referencias desde un menú. Sin embargo, en el siguiente artículo se muestra cómo ver referencias mediante código: 209849 Cómo recorrer en bucle las referencias para ver sus propiedades

Pasos para reproducir este comportamiento

  1. Abra la Northwind.mdb de base de datos de ejemplo.

  2. Cree un formulario nuevo que no se base en ninguna tabla o consulta.

  3. En el menú Insertar , haga clic en Control ActiveX.

  4. En la lista Seleccionar un control ActiveX , haga clic en Control de edición de imágenes de Kodak y, a continuación, haga clic en Aceptar.

  5. Guarde el formulario como frmReference y ciérrelo.

  6. Cierre Northwind.mdb y, a continuación, salga de Access.

  7. Busque y cambie el nombre del archivo ImgEdit.ocx a ImgEdit.old.

  8. Inicie Access y abra Northwind.mdb.

  9. Abra el módulo Inicio en la vista Diseño.

  10. En el menú Depurar , haga clic en Compilar Northwind. Tenga en cuenta que recibe los dos mensajes de error que se mencionan en la sección "Síntomas" de este artículo.

  11. Haga clic en Aceptar. Tenga en cuenta que aparece el cuadro de diálogo Referencias; la siguiente referencia se resalta en el cuadro de diálogo Referencias disponibles :

    MISSING: Kodak Image Edit Control

  12. Haga clic en Cancelar en el cuadro de diálogo Referencias disponibles.

  13. Busque y cambie el nombre del archivo ImgEdit.old a ImgEdit.ocx.

  14. Repita el paso 10 y tenga en cuenta que el mensaje de error ya no aparece.