BASE DE DATOS EN EXCEL
Una base datos es un conjunto de datos que ha sido organizado
bajo un mismo contexto y cuya información está almacenada y
lista para ser utilizada en cualquier momento. Las bases de datos
pueden almacenar información sobre personas, productos, ventas
o cualquier otra cosa.
Una base de datos organiza la información relacionada en tablas
las cuales están compuestas por columnas y filas. Una tabla
tendrá un número específico de columnas, pero tendrá cualquier
número de filas.
Si observas con detenimiento la imagen anterior, notarás que una
tabla se asemeja mucho a una hoja de Excel la cual también está
dividida en columnas y filas. Por esa razón Excel ha sido utilizado
por mucho tiempo, y por muchas personas, como un repositorio
de datos.
DISEÑO DE BASES DE DATOS EN EXCEL
Si diseñas y organizas adecuadamente la información dentro de
tu libro de Excel podrás consultar tus datos de una manera fácil y
eficiente, así que en esta ocasión hablaremos sobre las mejores
prácticas para crear una base de datos en Excel que te
permitirán organizar y estructurar adecuadamente la información.
Como ejemplo analizaremos el caso de una pequeña librería que
desea crear un catálogo de sus libros en Excel así como tener
una lista de sus clientes y las órdenes de compra. Antes de crear
la base de datos en Excel comenzaremos por crear el diseño
siguiendo los pasos descritos en el artículo Diseño de bases de
datos.
PASO 1: IDENTIFICAR LAS TABLAS DE LA
BASE DE DATOS
Nuestro primer paso en el diseño de una base de datos en Excel
será identificar las tablas que ocuparemos para organizar la
información. Para nuestro ejemplo de la librería podemos
mencionar las siguientes tablas:
Para identificar adecuadamente las tablas de una base de datos
debes poner atención en las agrupaciones naturales de la
información, es decir, en los sujetos que interactúan en la
problemática analizada. En este caso los sujetos principales son
los libros, los clientes y las órdenes.
PASO 2: DETERMINAR LOS CAMPOS DE
LAS TABLAS
Una vez que hemos identificado las tablas debemos indicar el
nombre de cada una de sus columnas (campos). El nombre del
campo deberá ser descriptivo y nos ayudará a identificar cada una
de las propiedades de un elemento de la tabla.
Por ejemplo, para cada libro en venta en la librería guardaremos
su código ISBN, el título, el autor y el precio por lo que dicha tabla
quedará definida de la siguiente manera:
Los campos de cada tabla dependerán de la información que está
a tu disposición para ser ingresada en la base de datos. Por
ejemplo, algunas empresas o negocios tendrán interés en
capturar más información sobre sus clientes lo cual hará que su
tabla de Clientes tenga más campos que los mostrados en el
ejemplo anterior.
PASO 3: IDENTIFICAR LA LLAVE PRIMARIA
DE CADA TABLA
Una llave primaria nos permitirá identificar de manera única cada
uno de los registros de las tablas. En el caso de la tabla Libros, el
ISBN será la llave primaria ya que es un código único
internacional para cada libro publicado por lo que dicho número
jamás se repetirá.
En el caso de las tablas para Órdenes y Clientes crearemos un
número consecutivo que identificará de manera única cada una
de las filas.
PASO 4: IDENTIFICAR LAS RELACIONES
ENTRE TABLAS
Este paso es de utilidad para asegurarnos que podremos vincular
la información de las tablas a través de la relación que existe
entre dos de sus campos. Por ejemplo, si para una determinada
orden de compra quiero saber el título del libro que ha sido
vendido, bastará con relacionar la columna ISBN de la tabla
Órdenes con la columna ISBN de la tabla Libros para conocer el
título.
De manera similar, si deseo conocer el cliente para una
determinada orden de compra, solo deberé seguir la relación
indicada por el campo IDCliente en ambas tablas.
PASO 5: IDENTIFICAR DATOS REPETIDOS
EN TABLAS
Aun cuando pensemos que hemos terminado con el diseño de
nuestra base de datos, es importante hacer un breve ejercicio con
algunos datos reales para identificar la posible existencia de datos
repetidos y tomar las decisiones adecuadas para evitarlos.
Por ejemplo, considera el caso de la tabla Libros donde
podríamos tener uno o más títulos escritos por el mismo autor. En
ese caso, estaríamos repitiendo el nombre y apellido del autor en
varios registros de la tabla.
Para evitar la repetición de datos lo recomendable es crear una
nueva tabla que almacene la información de los autores y hacer
referencia a dicha tabla a través de su campo llave tal como se
muestra en la siguiente imagen:
De esta manera evitaremos la repetición en el nombre de los
autores y también se evitará la captura de un sin número de
variantes del mismo. Para seguir con nuestro análisis, haremos
una captura de datos de prueba de una orden, por ejemplo:
Estos son los datos de la orden de compra número 1 donde el
cliente ha comprado 3 libros, siendo dos de esas copias del
mismo título. El problema con estos datos es que se repite el
número de orden y eso no sería posible ya que esa es nuestra
llave primaria en la tabla y no puede repetirse. Además para cada
registro se repite la Fecha, así como las columnas IDCliente y
TipoPago. Para resolver este problema debemos crear una tabla
adicional que almacenará los libros de cada orden de compra de
la siguiente manera:
Es así como el haber identificado datos repetidos en las tablas
nos ha hecho tomar la decisión de agregar tablas adicionales a
nuestro diseño para minimizar el espacio utilizado por nuestra
base de datos que será de gran importancia al momento de que
los datos crezcan. De esta manera nuestro diseño final queda de
la siguiente manera:
CREAR LA BASE DE DATOS EN EXCEL
Una vez que tenemos el diseño de la base de datos podemos
crearla fácilmente en Excel siguiendo dos recomendaciones:
Cada tabla del diseño será una tabla de Excel.
Colocar cada tabla en su propia hoja de Excel.
El motivo para utilizar tablas de Excel es que existen
múltiples beneficios de utilizar tablas entre los cuales están los
filtros y el reconocimiento automático de nuevas filas y columnas.
Por otro lado, la razón por la cual colocar cada tabla en su propia
hoja de Excel es para facilitar el crecimiento de los datos ya que si
colocas varias tablas en una misma hoja probablemente tendrás
que moverlas o redefinirlas cada vez que alguna de ellas aumente
de tamaño y se sobrepongan entre sí.
CONSULTAR LA BASE DE DATOS EN
EXCEL
Una vez que se ha creado la base de datos en Excel y comiencen
a crecer los datos, seguramente te encontrarás con la necesidad
de relacionar la información de diferentes tablas para obtener
datos complementarios. Por ejemplo, considera las siguientes dos
tablas:
La [Link] contiene una tabla llamada Ordenes y la
[Link] contiene la tabla Clientes. Si al consultar la tabla
Ordenes deseo conocer el Email del cliente que ha efectuado
dicha compra, puedo utilizar funciones de Excel para obtener
dicha información. Ya que estoy utilizando tablas de Excel, puedo
hacer uso de las referencias estructuradas, por ejemplo:
=BUSCARV(Ordenes[IDCliente], Clientes, 5,FALSO)
Esta fórmula buscará el valor de la columna IDCliente, que
pertenece a la tabla Ordenes, dentro de la tabla Clientes y
devolverá la columna 5 de esta última tabla. Observa el resultado
de la fórmula:
El resultado de la fórmula es correcto ya que la orden número 1
fue hecha por el cliente con un IDCliente igual a 5 y que
corresponde a Luis cuyo Email es el mostrado en la celda F2. De
esta manera puedes relacionar la información de las diferentes
tablas en tu base de datos en Excel, ya sea utilizando la función
BUSCARV o la combinación de funciones INDICE/COINCIDIR ya
que ambas nos permite crear fórmulas para buscar datos.
Si quieres practicar un poco más con este tipo de
fórmulas, descarga el libro de trabajo que contiene el ejemplo que
acabamos de realizar. Antes de finalizar este artículo, es
necesario hacer algunas aclaraciones importantes sobre
las bases de datos en Excel, pero para eso necesito explicar un
poco sobre los sistemas de gestión de bases de datos.
SISTEMAS DE GESTIÓN DE BASES DE
DATOS (DBMS)
Varias décadas atrás, cuando las computadoras comenzaron a
hacerse más rápidas y eficientes en el manejo de información, se
hizo necesaria la creación de un sistema que se encargase de las
operaciones con los datos. Desde la década de los años sesenta
se crearon los primeros sistemas de gestión de bases de
datos (DBMS por sus siglas en inglés), cuya finalidad era facilitar
el almacenamiento, modificación y extracción de los datos.
El objetivo principal de un DBMS es coordinar y proteger el
acceso a la información y dicho objetivo se logra porque los
usuarios o aplicaciones solo pueden obtener datos utilizando
alguna interfaz o lenguaje de alto nivel como SQL y el sistema de
gestión de bases de datos se encargará de devolver la
información solicitada ya que el usuario, o aplicación, jamás tiene
contacto directo con los datos.
Es muy común que en el campo de la informática se hable de que
una base de datos debe tener un DBMS para ser considerada
como una verdadera base de datos. Un ejemplo de un DBMS es
el producto de Microsoft conocido como SQL Server que es un
motor de base de datos diseñado para el ambiente empresarial.
EXCEL NO ES UN DBMS
Aunque exista una gran cantidad de personas que utilizamos
Excel para almacenar información, eso no lo convierte en
un sistema de gestión de bases de datos. Excel no tiene un
servicio que controle la inserción o eliminación de los datos sino
que el mismo usuario puede hacerlo directamente en la
aplicación.
Algunas desventajas que tenemos al utilizar Excel para almacenar
nuestros datos son las siguientes:
Solo un usuario puede acceder a la información al mismo
tiempo.
Excel comenzará a ponerse lento cuando la base de datos
crezca en gran manera.
No es posible establecer un nivel de seguridad avanzado
como para proteger ciertos datos de ciertos usuarios.
CONCLUSIÓN
La realidad es que hay millones de usuarios de Excel que
utilizamos la herramienta como un repositorio de datos y aunque
no es formalmente un sistema de gestión de bases de datos, es
posible utilizarlo para guardar información útil.
Mi recomendación es que si te encuentras con que alguna de las
desventajas de Excel te está causando dolores de cabeza con tu
trabajo, entonces considera fuertemente la opción de utilizar algún
DBMS como Microsoft SQL Server o Access. Si las capacidades
de Excel han sido hasta ahora suficientes para ti, entonces te
recomiendo seguir los pasos descritos en este artículo para hacer
uso de las mejores prácticas en el diseño y construcción
de bases de datos en Excel y hacer más eficiente el trabajo y
organización de la información.