Mostrar una hoja de excel desde un Userform

De TodoExpertos

Tengo un formulario en un archivo Excel que oculta el libro al cargar usando el código

Application.visible = false

userform.show

Ahora bien, me gustaría saber como puedo hacer para que usando un botón desde el form me muestre solo una hoja del libro de excel y que posteriormente usando una macro oculte de nuevo la hoja de excel y muestre el formulario, no tengo problemas para mostrar la hoja, oculto el form, y usando la propiedad visible de las hojas oculto todas menos la que quiero mostrar, el problema es cuando quiero regresar al form ya que me arroja error

He intentado usar

sheets("hoja1").visible=false

userform1.show

Pero parece insuficiente,

Respuesta
3

Te dejo algunas instrucciones:

Para el botón del UF que usarás para mostrar una hoja, en mi ej es la Hoja2:

Private Sub CommandButton1_Click()
'x Elsamatilde
'muestra la aplicación
Application.Visible = True
'oculto hojas dejando solo 1 visible
Sheets("Hoja1").Visible = False
Sheets("Hoja3").Visible = False
'oculta el uf
Me.Hide
End Sub

Si las hojas ya estarán ocultas de antemano, no son necesarias las líneas con Visible = False

Luego para regresar el UF, desde cualquier hoja que esté visible:

Sub muestroform()
'se ejecuta desde la hoja visible
'se vuelve a ocultar la aplicación.
Application.Visible = False
UserForm1.Show
End Sub

Y por último, el botón de Salir del UF o como en este caso, el evento de cierre desde la x del extremo superior:

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
'al cerrar el Uf muestra la aplicación
Application.Visible = True
Unload Me
End Sub

A lo que debes prestar atención es que no estés ocultando todas las hojas. Desde el botón del UF oculté 2 .... no puedo ocultar la 3ra sin mostrar antes alguna otra.

Sods. Si esto resuelve tu consulta no olvides valorarla.

Elsa

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas