Ayuda con access y vba!

Tengo varios formularios y cuando uno de ellos se abre quiero comprobar si otro esta abierto. Ya que si el otro esta abierto realizara una cosa y si no realizara otra. ¿Me explico? A ver si alguien me puede ayudar.

1 Respuesta

Respuesta
1
El que un formulario esté o no abierto se puede comprobar con la colección Forms, el problema es que cuando se intenta acceder a un formulario por aquí sin estar abierto da un error, por lo que hay que controlarlo. En concreto, tendrías que usar algo como:
dim estaAbierto as boolean
on error resume next
estaAbierto=forms("nombredelformulario").name>""
on error goto 0
Esto te dejará establecida la variable estaAbierto a True o False. Por defecto está a false, si la línea intermedia se puede ejecutar porque el formulario está abierto, su nombre siempre será mayor que "" y se pondrá a true. En caso contrario, esa línea produce un error, que no se dispara por el 'on error', pero que hace que se quede a false. Luego ya puedes hacer lo que quieras.
if estaAbierto then
msgbox "Cinco lobitos"
else
msgbox "tiene la loba"
Endif

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas