Saltar al contenido

Manejo exclusivo del libro excel desde un formulario


Recommended Posts

publicado

Buenas noches,

Estoy detrás de manejar exclusivamente desde un formulario VBA la información de un libro excel.

Para ello lo que quiero es abrir el xls sin que se vea la hoja excel. Al salir, que siga sin verse la hoja y se cierre el formulario.

Se tendrían que ver con normalidad otros libros excel que puedan estar abiertos abiertos.

Bueno, aquí dejo el ejemplo de partida, que, como podéis ver, previsualiza el libro antes que el formulario.

Gracias anticipadas,

Juan.

Prueba Arranque.xls

publicado

Cuando cierras tu userform en ese mismo boton vuelves a hacer visible el Excel, si tu intención es que no se vea nunca bastaría cerrar tu archivo y/o la aplicación directamente desde dicho boton quizas usando algo así:


Application.Quit
[/CODE]

No me quedo claro lo de que otros libros de Excel si se puedan ver. Si la intención es que se vean otros menos el del 'Userform' pues cambia tu instruccion por algo así:

[CODE]
windows(1).Visible=true
[/CODE]

Y al cerrar el 'Userform' usa algo como esto:

[CODE]
ActiveWorkbook.Close savechanges:=True
[/CODE]

Comentas

Abraham

publicado

Gracias Abraham,

Lo que comentas es teórico y no me da resultados.

Lo que intento exponer es que puedo estar trabajndo con cualquier libro de excel. De repente decido trabajar también on este libro.

Al abrir, vamos a centrarnos sólo en el abrir, no quiero que se vea la hoja excel de este libro (las del resto de libros seguirán visibles) de forma que sólo se me presente en pantalla el formulario.

Gracias,

Juan Luis.

publicado

Mas o menos es lo que te comenta Abraham:

Al cargar el formulario, Application.Visible = False y al descargarlo, Application.Quit.

El formulario debe estar con la propiedad .ShowModal = False

Para el resto de archivos Excel, abre otra instancia Excel y abre los archivos desde Abrir archivo.

publicado

Estimado, ¿teorico? y claro, es con teoría que uno lleva a la practica y obtiene los resultados como el que tu pides. ¿No sera que no sabes y/o entiendes lo que deberían hacer las lineas de código enviadas? De ser así el problema pasa por otro lado ¿cual? pues leer y entender bien el lenguaje VBA. Por cierto, para poder usar los libros a pesar del 'Userform' pues Antoni ya te dio la respuesta

Saludos

Abraham

  • 2 weeks later...
publicado

Es muy sencillo quita del codigo Application , con solo usar el comando Windows hace lo que necesitas

Private Sub CommandButton1_Click()

Unload UserForm1

Windows("Prueba arranque.xls").Visible = True

End Sub

al igual que en el ThisWorbook , te sugiero desabilites el control de cerrar en el formulario ya que si lo cierras y la ventana no esta visible no sabras si guardaste los cambios .. ...

tambien agrega el codigo antes de empezar tu proceso Application.ScreenUpdating=False o true para que desabilites la pantalla cuando hagas los procesos , esto mejora el rendimiento de la macro , recuerda habilitar este control al finalizar la macro

Private Sub Ejemplo()

Application.ScreenUpdating=False

procesos

Application.ScreenUpdating=true

End Sub

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.