Access 2007 - Código VBA en Evento no se ejecuta

¿Existe algún parámetro en Access 2007 que al cambiar haya provocado que no se ejecute ningún procedimiento en Eventos escritos con el editor de Visual Basic para Aplicaciones y que funcionaban hasta la fecha?

No se trata de código corrupto de un Accdb concreto, me pasa con todas las BD que tengo.

Nota: Si ejecuto código desde una Macro llamando a un Módulo VBA, va bien. Si incluyo un evento en el mismo "Formulario1" con el mismo código, Access intenta hacer un backup y se cierra.

He creado una BD nueva vacía con un formulario y una tabla para probar, pero no se como adjuntarla en este mensaje. Soy novato en este foro.

2 Respuestas

Respuesta
2

Si tuviera restricciones tampoco se ejecutaría la macro, trate reparar el Access.

Para resolver este problema, es importante identificar qué cambios se han realizado en el entorno de Access o en la configuración del sistema que puedan estar afectando los eventos. Aquí hay algunas áreas que podrías revisar:

  1. Referencias de bibliotecas: Las referencias a bibliotecas de objetos pueden cambiar o volverse obsoletas. Abre el editor de VBA (Alt + F11) y verifica si hay referencias marcadas como "Faltantes" o "No encontradas". Si es así, desmarque esas referencias y busque las versiones adecuadas de las bibliotecas para restablecerlas.

  2. Opciones de seguridad de macro: Access tiene configuraciones de seguridad que controlan qué acciones se permiten en las macros y en el código VBA. Si estas opciones están restringidas, puede afectar la ejecución de eventos y provocar que Access intente hacer un backup y se cierre. Verifique las opciones de seguridad en el menú "Archivo" > "Opciones" > "Centro de confianza" > "Configuración del Centro de confianza" y ajuste las opciones según sea necesario.

  3. Actualizaciones de software: Es posible que haya habido actualizaciones o cambios en el sistema operativo o en Microsoft Office que afecten el comportamiento de Access. Asegúrate de que el sistema esté actualizado con las últimas actualizaciones y Service Packs.

  4. Compatibilidad con versiones anteriores: Es posible que el código VBA utilizado en los eventos no sea compatible con Access 2007 o que alguna función o método haya sido reemplazado en versiones posteriores. Verifica la documentación de Microsoft para asegurarte de que el código sea compatible con Access 2007.

  5. Configuración del formulario: Si tiene algún código en el evento "Al Cargar" del formulario que esté afectando la ejecución del resto de los eventos, puede causar problemas. Revise el código en el evento "Al Cargar" para asegurarse de que no haya ninguna instrucción que interfiera con otros eventos.

Estimado Eduardo, gracias por tu ayuda, pero he revisado

  • Las opciones de Centro de Confianza,
  • No he actualizado software mi entorno PC,
  • En cuanto a revisar el/los formulario/s, creé una BD con un sólo formulario y una sola tabla y si incluyo "msgbox" al cargar, casca, si lo quito, funciona.

Creo que el problema está en la ejecución de VBA (Sub), por esto, estoy revisando incluso las claves de registro de Windows en cuanto a seguridad de Access, pero sigo sin ver la solución.

¡Gracias! y un abrazo. 

Si quiere envíeme la base de datos con información ficticia y la reviso a [email protected]

Estimado Eduardo, como te adelanté no puedo pasarte la BD con la que inicialmente se produjo el error, pero si te adjuntom,  por email,  la que he hecho En blanco" para que compruebes, pues me da el mismo problema en cualquier BD.Accdb.

Vaya por delante mi agradecimiento mas sincero.

NOTAS:

1. Solo hay una tabla "Tabla1"

2. Solo hay un formulario "Formulario1"

3. Solo una Macro "PRUEBA"

4. Hay dos Módulos de código VB, "Declara_Variables" y "F_PRUEBA".

5. La Macro "PRUEBA" ejecuta el Módulo "F_PRUEBA" y este visualiza un mensaje con MSGBOX y abre el formulario "Formulario1".

6. Hasta aquí sin problema, ha ejecutado macro, módulo y formulario.

7. Ahora si añades un evento en el formulario "Formulario", el que sea (yo pruebo con evento "Al Cargar". No hace falta que incluyas ninguna sentencia el el mismo, solo con que esté definido el Private Sub ......... End Sub, ya falla Access y se sale pidiendo nombre para archivo de backup.

Yo no creo que todos los *.Accdb estén corruptos, tampoco que Acccess 2007 esté deteriorado (Lo que reinstalado ya dos veces), mas bien me inclino por alguna actualización de Windows 10 que me haya cortado el uso del VBA por asuntos de seguridad. Yo voy a seguir investigando en esta línea.

Un cordial saludo y muchas gracias.

AMC.

Resuelto!!!!!, después de mucha investigación.

Finalmente, el problema no era de base de datos *.Accdb corrompida, ni se trataba del software Microsoft Office 2007. Siguiendo la pista de incompatibilidades en Internet, descubrí la que existía entre Windows 10 y Office 2007.

Revisé la traza de mis actualizaciones ("Windows=>Configuración=>Actualización y Seguridad=>Historial/Desisntalar"), comprobé que, en fecha anterior al inicio de mi problema, se instaló de forma automática una actualización de Windows, concretamente:

  • Actualización de seguridad para Microsoft Windows (KB5028166) el 12/07/2027.
  • Actualizar para Microsoft Windows (KB5028853) el 12/07/2027 el 12/07/2027.

Finalmente he comprado e instalado MS Office 2016 y "voilà"  Ya está  ==> Funciona sin mas.

Partiendo de la situación de tener adquirido ("comprado") Office 2007, en su momento, sin comprender el alcance de las nuevas actualizaciones nombradas y sin saber si ha tenido que ver con el problema, ¿Debería Microsoft revisar las actualizaciones que puedan influir en el buen funcionamiento de un software adquirido legalmente, aunque esté fuera de soporte?

No puedo ni voy a averiguarlo, pero deben existir unas cuantas empresas pequeñas a las que le haya podido pasar lo mismo.

Saludos.

Me alegro lo haya solucionado la próxima vez con una maquina virtual hubiera realizar la prueba con otra version de office.

Respuesta

No se puede juzgar sin la muestra, pero en A'2007 se comenzó a utilizar 'el entorno de confianza' para permitir ejecutar macros (y también código) sin restricciones, sin esos permisos el mismo antivirus puede ser el que no permita un flujo normal.

Estimado Enrique, gracias por tu ayuda, pero he revisado las opciones de Centro de Confianza y creo que esta correcto, es más estoy revisando incluso las claves de registro de Windows en cuanto a seguridad de Access, pero sigo sin ver la solución.

¡Gracias! Y un abrazo.

Las verificaciones que podamos hacer con los datos que no has podido adjuntar al mensaje, serian las mismas que se pueden hacer en cualquier otra maquina (un portatil por ejemplo) y de ese punto obtener las pistas que pudieran aclarar la duda de volver a instalar (tras una adecuada limpieza) a Access como aplicación.

La forma de adjuntar una base de ejemplo pasa por subirla a un repositorio y tras ello publicar en una nueva intervención el enlace.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas