Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Error de Automatización -2147417848

Estas en el tema de Error de Automatización -2147417848 en el foro de Visual Basic clásico en Foros del Web. Hola a todos, espero que me puedan ayudar, porque estoy ya agobiado Mi problema es el siguiente Estoy desarrollando una macro para Excel en la ...
  #1 (permalink)  
Antiguo 15/12/2006, 04:12
 
Fecha de Ingreso: diciembre-2006
Mensajes: 0
Antigüedad: 17 años, 4 meses
Puntos: 0
Error de Automatización -2147417848

Hola a todos, espero que me puedan ayudar, porque estoy ya agobiado Mi problema es el siguiente

Estoy desarrollando una macro para Excel en la que tengo un formulario principal llamado FormPanelControl en el cual tengo una serie de pestañas en las que cada una se supone que hace algo.

Luego tengo otro formulario que se llama FormInfoSistema, en el cual tengo una especie de mini-tutorial en el que se explica como utilizar la macro, Para ello le meto un TreeView en el que se divide jerarquicamente todas las opciones de la macro.

El caso es que cuando ejecuto la macro por primera vez todo va de lujo. Es decir que le doy a un boton que tengo en el formulario principal en el cual he metido el siguiente código:

Private Sub CommandButton1_Click()
FormPanelControl.Hide
FormInfoSistema.Show
End Sub

y entonces me abre el formulario FormInfoSistema y me carga todo los datos y bien.

Luego cuando le doy a la x de la ventana para cerrarla de este formulario tengo el siguiente código:

Private Sub UserForm_Terminate()
FormPanelControl.Menu.Value = 4
FormPanelControl.Show
End Sub

La primera linea es para que me abra directamente la pestaña desde la que se llamo al formulario FormInfoSistema, el caso es que todo funciona a la perfección, el problema viene al darle la segunda vez al boton, me abre bien el formulario pero no carga los datos. Y sale todo en blanco y no se que le pasa

Para cargar los datos la primera vez usaba la siguiente forma:

Public Sub UserForm_Initialize()
Call Inicio
End Sub

Pero me di cuenta que esto solo lo hacía la primera vez no se muy bien el por que, asi que puse la llamada a Inicio de la siguiente forma que siempre la hace

Private Sub UserForm_Activate()
Call Inicio
End Sub

El problema segundo problema a parte de que no me carga los datos es que parece como que cuando hago el userForm_terminate, no borra los datos y por lo tanto he de borrar el TreeView antes para que luego al cargarlo no repita otra vez toda la estructura (eso suponiendo que consiguiese que se viese la estructura). Asi que decidi poner antes de meter los datos en el Treeview un TreeView1.nodes.clear y entonces al intentar añadir el primer nodo al TreeView me da el siguiente error:

Se ha producido el siguiente error: -2147417848, Error de Automatización el objeto invocado ha desconectado de sus clientes

Porfavor ayudenme.

Muchas gracias por todo.
  #2 (permalink)  
Antiguo 19/12/2006, 19:00
 
Fecha de Ingreso: julio-2004
Mensajes: 104
Antigüedad: 19 años, 9 meses
Puntos: 0
Re: Error de Automatización -2147417848

Tu proble seguramente es de estrucuturacion de tu programa.
cuando cierras el formulario con la X seguro que este se descarga de memoria y no puede abrirse nuevamente... lo ideal es que uses un Modulo y dentro de este se encargue de llamar a cada formulario... por cierto no users MIFORM.SHOW para llamar al formulario te recomiento que uses lo siguiente:
load MIForm
miform.show 1
unload miFORM
de esta forma controlas que no se cierre y se cargue por si solo. Si no a voluntad.
Mandame un privado para que revisemos tu codigo.
__________________
Podria no estar de acuerdo con lo que dices....., pero daria mi vida por el derecho que tienes de decirlo.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:37.