Evitar apertura ventana código |
Responder |
Autor | |
xavi
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Terrassa-BCN Unido: 10/Mayo/2005 Localización: Catalunya |||| Estado: Sin conexión Puntos: 14734 |
Tema: Evitar apertura ventana código Enviado: 30/Mayo/2020 a las 13:50 |
Hola,
Miro de poneros en situación. Estoy trabajando en un entorno de aplicación genérico que me sirva de base para desarrollar cualquier aplicación. Es un "framework" dónde ya hay un montón de funciones que he mirado de estandarizar y flexibilizar al máximo. En un determinado momento puedo lanzar unas funciones destinadas a saber si la aplicación contiene una determinada función dentro del código. Para ello utilizo un par de funciones (ExisteModulo y ExisteProcedimiento) que trabajan conjuntamente para devolver True/False. Los procedimientos funcionan perfectos excepto por el pequeño detalle de que hay una línea que me abre la ventana de VBA (la marco en rojo). ¿Alguna idea de como evitar ese efecto? También se aceptan alternativas Este es el código (he sacado cosas innecesarias)
Muchas gracias
|
|
Mihura
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Unido: 06/Mayo/2005 Localización: En la dehesa Estado: Sin conexión Puntos: 14017 |
Enviado: 30/Mayo/2020 a las 14:09 |
Sin probar el detalle de la apertura de la ventanita ....
Yo me plantearía tener los nombre de las funciones / rutinas implementadas en un tabla de la aplicación ... a modo de MsysObjects personal. Una posible opción para ocultar la ventana es cuando busques una función hacerlo por automatismo, ya que como lo puedes mantener visible = False no lo verías, la ejecución es muy rápida, así que si no son muchas consultas ese podría ser otro camino. Una mezcla de los dos anteriores ... Por cierto, una jilipo***z, ... ¿has probado Echo Off / Echo On? Un saludo minyó. Editado por Mihura - 30/Mayo/2020 a las 14:09 |
|
pitxiku
Colaborador Unido: 27/Septiembre/2017 Localización: En mi casa Estado: Sin conexión Puntos: 1512 |
Enviado: 30/Mayo/2020 a las 14:17 |
¿Has probado con WizHook?
- http://www.mvp-access.es/juanmafan/wizhook/globalprocexists.htm |
|
happy
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Moderador Unido: 29/Enero/2005 Localización: España Estado: Sin conexión Puntos: 3192 |
Enviado: 30/Mayo/2020 a las 14:21 |
Xavi tienes que utilizar la librería Microsoft Visual Basic Applications Extensibility X.X. Con esa librería y sus objetos y métodos, los cuales si investigas con el examinador de objetos lo podrás comprobar, contienen los mismos métodos y propiedades que los objetos Module de Access. La ventaja es que si utilizas esa librería en vez de los objetos Module, cuando quieras acceder al código contenido en ellos (creo que son objetos del tipo vbComponent) no necesitas que se "abra" el módulo ni su ventana. Se puede hacer de manera invisible. Yo imagino que las MzTools utilizan esa librería (además de otras cosas seguramente, claro). Edito: mira, tengo por ahí una función de hace mucho tiempo que te puede servir como ejemplo. No recuerdo para qué la utilizaba, la verdad, pero todavía funciona:
Editado por happy - 30/Mayo/2020 a las 14:23 |
|
Saludos,
Juan M. Afan de Ribera |
|
xavi
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Terrassa-BCN Unido: 10/Mayo/2005 Localización: Catalunya |||| Estado: Sin conexión Puntos: 14734 |
Enviado: 30/Mayo/2020 a las 14:28 |
@Jesus: El echo on/off ni cosquillas
@pitxiku: @Happy: lo miro pero lo de pitxiku no puede resultar más límpio. ¡¡Y encima viene de tu página!! Un saludo
|
|
happy
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Moderador Unido: 29/Enero/2005 Localización: España Estado: Sin conexión Puntos: 3192 |
Enviado: 30/Mayo/2020 a las 14:43 |
Pero igualmente, lo que venga del Wizhook es sólo eso y ya no te deja hacer nada más. En la función que he pegado se muestra cómo acceder a elementos del código de un proyecto VBA (access, excel, word, ...) y poder "hacer cosas" sin que se abran las ventanas y pudiendo modificar cosas y todo eso (ahora recuerdo que tenía un fichero Excel con código en el que de manera dinámica e invisible, incluía algunas líneas de código (creo que eran los valores de unas constantes, que no eran tan constantes, jejeje. Y hacía servir, como no, la librería esa que menciono) |
|
Saludos,
Juan M. Afan de Ribera |
|
xavi
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Terrassa-BCN Unido: 10/Mayo/2005 Localización: Catalunya |||| Estado: Sin conexión Puntos: 14734 |
Enviado: 01/Junio/2020 a las 11:05 |
Vale, adaptado y funcionando 100%.
De todas formas me quedo con los 2 métodos Un saludo
|
|
Responder | |
Tweet
|
Ir al foro | Permisos de foro Usted No puede publicar nuevos temas en este foro Usted No puede responder a temas en este foro Usted No puede borrar sus mensajes en este foro Usted No puede editar sus mensajes en este foro Usted No puede crear encuestas en este foro Usted No puede votar en encuestas en este foro |