Excel puede ser un excelente substituto para una base de datos local con pocos usuarios y transacciones no intensas. Asimismo para un freelance, puede ser una herramienta perfecta para gestionar sus proyectos, actividades y ganancias. Por esta razón, vamos a enseñarte a crear un CRUD (Create, Read, Update and Delete) típico para que registres mercancia, proyectos, clientes o lo que se te ocurra.
Para optimizar y agilizar el proceso, haremos uso de VBA (además es un pretexto perfecto para que lo aprendas) y generaremos nuestro propio menú personalizado en la Cinta de opciones del programa ¿Suena bien? ¡Pues, a darle átomos!
Tabla de Contenido
Preparando la tabla para los datos de nuestro CRUD
Abrimos el programa y capturamos en la fila 1, los siguientes valores:

Le aplicamos el Formato como tabla, de manera opcional puedes aplicar Validación de datos (recomendado)
No olvidemos marcar la opción: La tabla tiene encabezados.

En la pestaña Diseño, cambiemos el Nombre de la tabla a datos.

Abriendo el entorno de programación
Sobre nuestra Cinta de opciones (no importa realmente donde), presionamos el botón derecho de nuestro ratón y seleccionamos Personalizar la Cinta de opciones.

En la ventana de dialogo que acaba de aparecer, nos movemos a la sección Pestañas principales, y marcamos la casilla Programador (En algunas versiones se llama Desarrollador) y presionamos Aceptar.

En la recien destapada pestaña Programador, encontraremos el botón Visual Basic (podemos usar Alt + F11)

Al presionar el botón anterior, llegaremos al IDE de VBA (Visual Basic for Applications)

¡Diseñemos nuestro formulario!
En el IDE, encontramos del lado derecho el Administrador de proyectos con nuestro Libro de Excel cargado. Sobre la opción Microsoft Excel Objects, presionamos el botón derecho del ratón, seleccionamos Insertar y luego UserForm.

Podemos notar el formulario recien creado con el título UserForm1, el Cuadro de herramientas flotando en alguna parte de nuestra ventana y la Barra de propiedades a la izquierda o derecha de nuestra ventana.

Lo primero que haremos, será cambiar la propiedad (Name) de nuestro formulario de UserForm1 a frmAlta.

Conozcamos un poco el Cuadro de herramientas, concretamente los primeros 4 botones, de izquierda a derecha son: Selección (flecha), Etiqueta (el botón A) y Cuadro de texto (el botón ab) y Cuadro Combinado (el siguiente)

Damos un click en el botón Etiqueta y colocamos 4 de ellas sobre la superficie de nuestro formulario, lo más a la izquierda posible. Observe la imagen:

Si nos quedaron muy desordenadas, podemos seleccionarlas a todas, luego presionar el botón derecho del ratón sobre el grupo seleccionado, elegimos Alinear y luego la opción Izquierda.

Ahora que ya están perfectamente alineadas, seleccionamos cada etiqueta de arriba hacia abajo, y en la Barra de propiedades, cambiemos el valor Caption por los valores Nombre, Edad, Sexo y Teléfono correspondientes a cada una.

Si el tamaño del texto es muy pequeño, podemos seleccionar de nuevo todas las etiquetas y, en la Barra de Propiedades encontraremos la propiedad Font, presionamos el botón con los 3 puntos y configuramos la fuente a nuestro gusto.

Es hora de colocar los Cuadro de texto, seleccionamos la herramienta correspondiente y colocamos uno al lado de la etiqueta Nombre y otro al lado de la etiqueta Teléfono.

Si no quedaron alineados, podemos hacer lo mismo que hicimos con las etiquetas: seleccionarlos a todos, luego presionar el botón derecho del ratón sobre el grupo seleccionado, elegimos Alinear y luego la opción Izquierda.

Ahora, tomemos la caja de texto para el nombre, en la Barra de propiedades, buscamos su propiedad (Name) y la cambiamos a txtNombre.

Hacemos lo mismo con la caja de texto para Teléfono, cambiamos su propiedad (Name) por txtTelefono (sin acento)

Tomemos la herramienta Cuadro combinado, y colocamos 2: uno para Edad y otro para Sexo (no olvides alinearlos si quedaron mal colocados)

Al primero la cambiamos su propiedad (Name) por cmbEdad.

Y al segundo la ponemos cmbSexo

Ahors, tomemos la herramienta Botón de comando (justo debajo del botón A) y colocamos uno debajo de teléfono.

Le cambiamos su propiedad (Name) por cmbGuardar, en Caption reemplazamos el texto default por: Guardar Datos.

¡Es hora de programar un poco!
Sobre nuestro VBAProject, presionamos el botón derecho del ratón, elegimos Insertar y luego Módulo.

Necesitamos una subrutina que llame a nuestro formulario desde Excel. En VBA, las subrutinas se crean con la palabra clave Sub, se les asigna un nombre, parametros (si es necesario) y terminan con la palabra clave End Sub. Nuestra rutina se llamará MostrarAlta. Para abreviarlo, escriba únicamente: Sub MostrarAlta, de un Enter y el IDE creará el resto del código.

Cada formulario tiene un método llamado Show, los métodos son simplemente las acciones que cada objeto puede realizar. En este caso escribimos: frmAlta.Show justo donde el cursor de escritura está parpadeando.

Preparemos una pestaña propia para nuestro CRUD
Vamos a crear una nueva pestaña para la Cinta de opciones totalmente personalizada. Esta pestaña la estaremos utilizando en todo el proyecto. Para hacer esto, presionemos el botón derecho del ratón dentro de nuestra Cinta de opciones (no importa realmente donde) y seleccionamos: Personalizar la Cinta de opciones.

En el cuadro de dialogo que aparece, presionamos el botón Nueva Pestaña.

Seleccionamos nuestra Nueva pestaña y presionamos el botón Cambiar Nombre.

Le ponemos el nombre Personas y presionamos Aceptar.

Después, seleccionamos Nuevo Grupo, y presionamos de nuevo Cambiar nombre.

Le ponemos por nombre CRUD y elegimos un icono a nuestro gusto.

En la sección Comandos disponibles, abrimos la lista y elegimos Macros.

Nuestra subrutina (o macro como le dicen algunos) llamada MostrarAlta debe aparecer ahí. La seleccionamos, luego seleccionamos el grupo CRUD y presionamos el botón Agregar.

Ya que aparezca debajo del grupo CRUD, la seleccionamos y presionamos Cambiar nombre.

Le ponemos de nombre Alta de Personas, elegimos un icono apropiado para el botón que estamos creando y presionamos Aceptar.

De regreso a la ventana anterior, simplemente presionamos Aceptar.

En nuestra Cinta de opciones ahora encontraremos la nueva pestaña Personas, y dentro de ella un grupo llamado CRUD y un único botón llamado Alta de Personas.

Y si le damos un click a ese botón, aparece nuestro formulario.

Últimos toques a nuestro formulario.
Al hacer la prueba con el formulario que creamos, podemos ver que los Cuadros combinados para Edad y Sexo todavía no hacen nada. Es el momento de corregirlo. Lo primero que vamos a hacer, es insertar una Hoja nueva en nuestro archivo de Excel.

En nuestra hoja nueva, escribimos los valores que se muestran en la imagen:

Seleccionamos la celda B2, luego en la pestaña Inicio, buscamos en el grupo Edición, la opción Rellenar, al abrirla tomemos la subopción Series.

En el apartado Series en, elegimos Columnas. Establecemos el Incremento a 1 y el Límite a 90. Los demás valores se quedan como vienen por default. Presionemos Aceptar.

Renombremos nuestra Hoja a Info.

Regresemos al IDE de VBA con Alt + F11, con un doble click a frmAlta en el Administrador de proyectos, podemos regresar al formulario. Tomemos el cuadro combinado para Edad, en la Barra de propiedades buscamos su propiedad RowSource y establecemos la fórmula: =Info!B2:B79 (La lista de edades generada por serie)

En el caso del cuadro combinado para Sexo, el valor para la propiedad RowSource es la fórmula: =Info!A2:A3

¡Listo! Guardemos con Ctrl + S y regresamos a Excel con Alt + F11, es hora de hacer una segunda prueba. Demos click en nuestra pestaña Personas y luego en Alta de Personas para ver el resultado, observe este video demostrativo.
¡Y eso es todo por esta primera parte! ¿Te ha resultado? Déjanos saber en los comentarios aquí abajo, en nuestra cuenta de twitter @cablenaranja7 o en nuestra página de facebook.

Docente, IT Manager, Blogger & Developer. Escribo por diversión, educo por pasión. | Grandstanding is not my thing.