Cómo puedo Centrar un Form o ventana en VBA EXCEL?

25/02/2006 - 08:32 por Javiland | Informe spam
Necesito saber como puedo centrar un form (o ventana) en VBA Excel
independientemente de la resolución de la pantalla.

En Visual Basic 6.0 sería de la siguiente forma:

InforVentas.Top = (screen.Height - InforVentas.Height) / 2
InforVentas.Left = (screen.Width - InforVentas.Width) / 2

...pero la palabra "screen" no existe en VBA y no doy con ello

¿Podría alguien ayudarme?

Gracias por anticipado
Javiland
 

Leer las respuestas

#1 Héctor Miguel
25/02/2006 - 08:48 | Informe spam
hola, Javiland !

Necesito saber como puedo centrar un form (o ventana) en VBA Excel independientemente de la resolucion de la pantalla.
En Visual Basic 6.0 seria de la siguiente forma:
InforVentas.Top = (screen.Height - InforVentas.Height) / 2
InforVentas.Left = (screen.Width - InforVentas.Width) / 2
... pero la palabra "screen" no existe en VBA y no doy con ello...



si te refieres a formularios de usuario [userforms] -> DE VBA...

1) en la ventana de propiedades [con el objeto userform 'activo']...
puedes establecer su posicion de arranque [propiedad: StartUpPosition]
en cualquiera de las siguientes 'variantes'...
0 - Manual -> tu 'decides' las coordenadas donde aparecera el formulario [existen varias opciones]
1 - CenterOwner [por omision] -> se muestra 'centrado' en la ventana de excel [independientemente de posicion y tama#o]
2 - Center Screen -> se muestra 'centrado' -> en la pantalla completa [sin importar tama#o y posicion de excel]
3 - Windows Default -> windows 'se encargara' de ir mostrando los userforms 'en cascada' ;)

2) si 'prefieres' indicar la posicion [usando la opcion de 0-Manual para el startupposition]...
cambia [lo que en VB seria] el 'screen.Height / Width' por -> Application.Height / Width
o... -> Application.UsableHeight / UsableWidth [podrias encontrar 'otras' propiedades de objetos y/o combinaciones] ;)

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

Preguntas similares