VBA – Casilla de Verificación
In this Article
En VBA, puede crear una Casilla de Verificación (CheckBox) donde un usuario puede marcar o desmarcar la opción. Las Casillas de verificación se utilizan a menudo en los formularios de usuario, pero también se pueden utilizar en una hoja de cálculo. En este tutorial, usted aprenderá cómo crear una casilla de verificación (tanto en VBA como en hojas de trabajo de Excel), obtener una opción de usuario en VBA y utilizarla en el código.
Si desea aprender a crear un Cuadro de Lista (ListBox), haga clic aquí: VBA Cuadro de Lista
Si desea aprender a crear un Cuadro Combinado (ComboBox), haga clic aquí: VBA Cuadro Combinado
Crear un Cuadro de Lista (Checkbox)
Para insertar un Checkbox en la Hoja de Trabajo, debe ir a la pestaña Programador, hacer clic en Insertar y en Controles ActiveX elegir Casilla:
Cuando seleccione la casilla de verificación que ha insertado, puede hacer clic en Propiedades en la pestaña Programador:
Aquí puedes establecer diferentes propiedades del Checkbox. Primero, cambiamos el atributo Name a cmbCheckbox. A continuación, podemos utilizar el Checkbox con este nombre en el código VBA.
Además, cambiamos el texto que aparece al lado del checkbox a De acuerdo. Para ello, es necesario establecer el atributo Caption.
Obtener Un Elemento Seleccionado de un Checkbox en VBA
El propósito de un Checkbox es obtener la elección del usuario (casilla marcada o no). Para obtener un valor seleccionado por el usuario, necesitas utilizar este código:
Sub controlCasilla()
If Hoja1.cmbCheckbox.Value = True Then
Hoja1.Range("C3") = "De acuerdo"
Else
Hoja1.Range("C3") = "En desacuerdo"
End If
End Sub
Queremos rellenar la celda C3 con De acuerdo si la casilla de verificación está marcada y En desacuerdo en caso contrario. El valor de la casilla de verificación está en el atributo Value del objeto Hoja1.cmbCheckbox. El valor de la casilla de verificación puede ser verdadero o falso.
Como hemos marcado la casilla de verificación, el valor de Hoja1.cmbCheckbox.Value es verdadero, por lo que el resultado en C3 es De acuerdo.
Usar un Checkbox en un Formulario (UserForm)
Como hemos mencionado, los Checkbox se utilizan con mayor frecuencia en los Formularios (UserForms). Para explicar cómo puede hacerlo, primero insertaremos un Formulario. En el Editor VBA, haga clic con el botón derecho del ratón en el nombre del Módulo, haga clic en Insertar y elija UserForm:
Para mostrar los controles de inserción, es necesario activar la Caja de herramientas. Para ello, haga clic en el icono de la caja de herramientas en la barra de herramientas. Después de eso, obtendrá las ventanas con todos los controles disponibles. Puede hacer clic en la casilla de verificación para crearla en el formulario de usuario:
En la ventana de propiedades, cambiaremos el nombre del Checkbox a cmbCheckbox y el Caption a De acuerdo. Cuando ejecutemos el Userform, obtendremos el Checkbox en él.
Si desea obtener el valor seleccionado de la casilla de verificación, debe utilizar la misma lógica para la casilla de verificación en una hoja de cálculo, que se explica anteriormente en el artículo.