Anclado de los "UserForm" y dos cuestiones más.

A ver.

He descubierto muy recientemente los increíbles Formularios UserForm de Excel y para 'redondearlos' necesito resolver tres [u]cosillas[/u]:

1) Por defecto, al iniciar la aplicación de Excel, en cuyo evento al Abrir el correspondiente libro escribiendo la línea: [b]Frm_Inicio.Show[/b], arranco un UserForm que he llamado "[b]Frm_Inicio[/b]"; al hacerlo este lo hace centrado en la ventana: ¿[b]Cómo puedo anclarlo en la esquina superior izquierda[/b]?

2) ¿[b]Qué línea he de escribir en el evento Open del WorkBook para que me minimice el Ribbon de Excel[/b]?

3) Para permitir que en la Hoja de Calculo que en segundo plano permanece visible, se pueda ver el producto de los efectos que se desencadenan tras la ejecución del código previsto al accionar los controles contenidos en el UserForm, he tenido que desactivar la línea '[b]Application.ScreenUpdating = False[/b], que inicialmente tenía en un comando -reutilizado para el UserForm...-. ¿Cómo puedo restablecerla para evitar el molesto parpadeo que se genera en la hoja de segundo plano?

1 Respuesta

Respuesta
1

Ho la Rafal:

Desafortunadamente estos tags que estás poniendo no funcionan en este foro para resaltar el texto:

[b]Frm_Inicio.Show[/b]

Para eso, selecciona el texto y presiona el botón "Negrita", lo encuentras en la barra de iconos:

Frm_Inicio.Show


Regresando a tus preguntas:

1. Cómo puedo anclarlo en la esquina superior izquierda

En las propiedades del userform, cambia StartUpPosition a "0 - Manual"

Cambia Left y Top al número que desees, por si quieres que esté separado un poco del margen izquierdo y superior.

O también puedes hacerlo por código con lo siguiente:

Private Sub UserForm_Initialize()
  Me.StartUpPosition = 0
End Sub


2) ¿Qué línea he de escribir en el evento Open del WorkBook para que me minimice el Ribbon de Excel?

Private Sub Workbook_Open()
  'para ocultar
  ExecuteExcel4Macro ("show.toolbar(""ribbon"",0)")
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
  'para visualizar
  ExecuteExcel4Macro ("show.toolbar(""ribbon"", 1)")
End Sub

3.  ¿Cómo puedo restablecerla para evitar el molesto parpadeo que se genera en la hoja de segundo plano?

Solamente debes poner al inicio de la actualización y al final.

Si tienes dudas, pon aquí tu código para revisarlo y ver dónde es más conveniente.


No olvides la valoración.

Muchas gracias, Dante!!! 

Sin embargo, respecto a la cuestión del "parpadeo", no entiendo lo que dices de "Solamente debes poner al inicio de la actualización y al final"... ¿actualización? ...

Pon aquí tu código para revisarlo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas