Insertar un calendario desplegable en Excel 2010

Anuncio
Insertar un calendario desplegable en
Excel 2010
Un control muy utilizado en Excel por muchos años ha sido el Control Date and Time Picker que nos permite
insertar uncalendario desplegable en nuestras hojas para permitir la selección de una fecha con un solo clic evitando
así la introducción manual de una fecha.
Este control nos ahorra muchos problemas ya que en ocasiones las personas introducen fechas con un formato
inválido o simplemente intercambian el día por el mes y se ocasionan problemas difíciles de corregir posteriormente.
Desafortunadamente este control ya no fue incluido en Excel 2010, ni en versiones posteriores, así que antes de
poder utilizarlo será necesario realizar la instalación que describiré a continuación en dos simples pasos. Sin
embargo, una condicionante para utilizar este control es tener una versión de Office de 32 bits ya que dicho control
fue desarrollado varios años atrás y no es compatible con la versión de 64 bits de Office.
Paso 1: Registrar el control en Windows
El primer paso es descargar el archivo MSCOMCT2.OCX a tu computador. El archivo que descargarás es un
archivo .ZIP que deberás descomprimir, obtener el archivo .OCX y posteriormente colocarlo en la carpeta
C:\Windows\System32. Si tienes Windows 7 o Windows 8 de 64 bits entonces el archivo .OCX deberá ser colocado
en la carpeta C:\Windows\SysWow64.
El siguiente paso es abrir el Símbolo de sistema como Administrador del equipo. Para ello debes hacer clic derecho
en el icono de dicha aplicación y seleccionar la opción “Ejecutar como administrador”:
Una vez abierta la ventana del Símbolo de sistema debemos ejecutar un comando para registrar nuestro control en
Windows. La instrucción depende del lugar donde hayas colocado el archivo del paso anterior. Para sistemas con
Windows de 32 bits la instrucción a ejecutar es la siguiente:
regsvr32 C:\Windows\System32\MSCOMCT2.OCX
Si tienes un computador con Windows de 64 bits la instrucción debe ser la siguiente:
regsvr32 C:\Windows\SysWow64\MSCOMCT2.OCX
Como puedes observar, la única diferencia es la ubicación del archivo .OCX a utilizar en la instrucción. Como
resultado obtendremos un mensaje de éxito en el registro.
Paso 2: Registrar el control en Excel
Ahora es necesario abrir Excel e ir a la ficha Programador, pulsar el botón Insertar y seleccionar la opción Más
controles de la sección Controles ActiveX:
Dentro del cuadro de diálogo Más controles debes pulsar el botón Registrar personalizado el cual abrirá un cuadro
de diálogo que nos permitirá buscar el archivo MSCOMCT2.OCX registrado en Windows en el paso anterior. Al
terminar esta acción podrás ver el control Microsoft Date and Time Picker Control 6.0 (SP6) dentro de las lista de
los controles disponibles para usar en Excel:
Insertar un calendario desplegable en Excel
Para insertar el calendario desplegable será suficiente con seleccionar el control de la lista y pulsar el botón
Aceptar para entonces dibujarlo sobre la hoja de nuestro libro.
Para comenzar a utilizar el calendario desplegable debemos desactivar el Modo Diseño y al hacer clic sobre el
control se mostrarán los días del mes actual con la fecha del día de hoy seleccionada:
Vincular una celda al calendario desplegable
Un método para conocer la fecha seleccionada en el calendario desplegable es vincular el control a una celda.
Para hacerlo debemos activar de nueva cuenta el Modo Diseño desde la ficha Programador y posteriormente
seleccionar el control y pulsar el botón Propiedades que también se encuentra en el grupo Controles:
Al abrirse el cuadro de diálogo Propiedades debes encontrar la propiedad llamada LinkedCell y colocar la dirección
de la celda donde deseas ver reflejada la fecha del calendario desplegable. Para este ejemplo he colocado la celda
A1:
Cada vez que exista una nueva selección en el calendario desplegable verás reflejada la nueva fecha en la celda
vinculada:
Acceder por código al calendario desplegable
Si deseas acceder por código al valor de la fecha seleccionada en el calendario desplegable, entonces deberás
hacer uso de su propiedad Value. Por ejemplo, agrega a la misma hoja un botón de comando ActiveX con el
siguiente código:
1
2
3
4
5
Private Sub CommandButton1_Click()
MsgBox DTPicker21.Value
End Sub
El nombre del control, que en este caso es DTPicket21, es el valor que tiene la propiedad Name del calendario.
Observa cómo al hacer clic en el botón se muestra la fecha seleccionada en el calendario:
Capturar la hora en lugar de la fecha
El control Date and Time Picker también nos ofrece la opción de capturar la hora en lugar de la fecha. Para habilitar
esta opción es necesario modificar la propiedad Format habilitando la opción dtpTime.
Con este cambio el control modificará su aspecto para mostrar las horas del día y permitir al usuario modificar el
número de hora, minuto o segundo a través de un par de flechas ubicadas a la derecha del control o
introduciéndolas directamente con el teclado en el espacio correspondiente.
Ahora ya sabes cómo utilizar este control para obtener tanto fechas y horas sin la necesidad de aplicar validaciones
adicionales ya que el mismo control limitará las opciones de captura para el usuario y además se encargará de
verificar cada uno de los valores ingresados.
Documentos relacionados
Descargar