- Software
- Oficina de Microsoft
- Excel
- Cómo agregar controles a los cuadros de diálogo de Excel 2016 en VBA
Libro Relacionado
Contents
Programación de Excel VBA para Dummies, 4ª Edición
Por John Walkenbach
Aquí aprenderá a añadir controles a un VBA UserForm, darles nombres significativos y ajustar algunas de sus propiedades. Antes de que pueda hacer cualquiera de estas cosas, debe tener un Formulario de Usuario, el cual puede obtener seleccionando Insertar → Formulario de Usuario en el VBE. Cuando añada un formulario de usuario, asegúrese de que el proyecto correcto esté seleccionado en la ventana Proyecto (si hay más de un proyecto disponible).
Adición de controles
Curiosamente, el VBE no tiene comandos de menú que le permitan añadir controles a un cuadro de diálogo. Debe utilizar la caja de herramientas flotante para añadir controles. Normalmente, la caja de herramientas aparece automáticamente cuando se activa un formulario de usuario en el VBE. Si no lo hace, puede mostrar la caja de herramientas seleccionando Ver → Toolbox.
Siga este procedimiento para añadir un control al formulario de usuario:
- Haga clic en la herramienta Caja de herramientas correspondiente al control que desea agregar.
- Haga clic en el formulario de usuario y arrástrelo hasta el tamaño y la posición del control o simplemente arrastre un control desde la caja de herramientas hasta el formulario de usuario para crear un control con las dimensiones predeterminadas. Aquí hay un UserForm que contiene algunos controles: Dos botones de opción (dentro de un marco), un ComboBox, un CheckBox, una ScrollBar, y un CommandButton.A UserForm en el VBE, con algunos controles añadidos.
Un formulario de usuario puede contener líneas de cuadrícula verticales y horizontales, que ayudan a alinear los controles que usted agregue. Cuando agrega o mueve un control, éste se ajusta a la cuadrícula. Si no le gusta esta función, puede desactivar las cuadrículas siguiendo estos pasos:
- Seleccione Herramientas → Opciones en el VBE.
- En el cuadro de diálogo Opciones, seleccione la ficha General.
- Establezca las opciones deseadas en la sección Parametrizaciones de cuadrícula de formulario.
Introducción de las propiedades de control
Cada control que añada a un formulario de usuario tiene propiedades que determinan el aspecto y el comportamiento del control. Puede cambiar las propiedades de un control en las dos ocasiones siguientes:
- En tiempo de diseño – cuando está diseñando el UserForm. Esto se hace manualmente, utilizando la ventana Propiedades.
- En tiempo de ejecución – mientras su macro está en ejecución. Para ello, escriba el código VBA. Los cambios realizados en tiempo de ejecución son siempre temporales; se realizan en la copia de la ventana de diálogo que está mostrando, no en el objeto UserForm real que diseñó.
Cuando agrega un control a un formulario de usuario, casi siempre necesita hacer algunos ajustes de tiempo de diseño a sus propiedades. Estas modificaciones se realizan en la ventana Propiedades. (Para mostrar la ventana Propiedades, pulse F4.) Aquí está la ventana Propiedades, que muestra las propiedades del objeto seleccionado en el UserForm – que resulta ser un control CheckBox.
Utilice la ventana Propiedades para realizar cambios en las propiedades de un control en tiempo de diseño.
Para cambiar las propiedades de un control en tiempo de ejecución, debe escribir código VBA. Por ejemplo, es posible que desee ocultar un control en particular cuando el usuario hace clic en una casilla de verificación. En tal caso, escriba código para cambiar la propiedad Visible del control.
Cada control tiene su propio conjunto de propiedades. Sin embargo, todos los controles tienen algunas propiedades comunes, como Nombre, Anchura y Altura. A continuación se presentan algunas de las propiedades comunes disponibles para muchos controles.
PropertyWhat It AffectsAcceleratorLa letra subrayada en el título del control. El usuario
pulsa esta tecla junto con la tecla Alt para seleccionar la opción
control.AutoSizeIf True, el control se redimensiona a sí mismo automáticamente basándose en el parámetro
texto en su título.BackColorEl color de fondo del control.BackStyleEl estilo de fondo (transparente u opaco).CaptionEl texto que aparece en el control.Left y TopValues que determinan la posición del control.NameThe control’s name. Por defecto, el nombre de un control es
basado en el tipo de control. Puede cambiar el nombre por uno válido.
pero el nombre de cada control debe ser único dentro de la directiva
cuadro de diálogoImagenUna imagen gráfica para mostrar. La imagen puede ser de un gráfico
o puede seleccionar la propiedad Picture y pegar una imagen
que ha copiado al Portapapeles.ValueEl valor del control.VisibleIf False, el control está oculto.Width y HeightValues que determinan el ancho y la altura del control.
altura.
Cuando selecciona un control, las propiedades de ese control aparecen en la ventana Propiedades. Para cambiar una propiedad, simplemente selecciónela en la ventana Propiedades y haga el cambio. Algunas propiedades te dan ayuda. Por ejemplo, si necesita cambiar la propiedad TextAlign, la ventana Propiedades muestra una lista desplegable que contiene todos los valores de propiedad válidos.
Cambie algunas propiedades seleccionando de una lista desplegable de valores de propiedades válidos.