Las relaciones entre tablas conectan información que antes se repetía en varios sitios. En el libro de ejemplo de una tienda, los datos de cada cliente aparecen una sola vez en una tabla y los pedidos guardan únicamente su identificador. Al terminar, sabrás crear esos vínculos, exportarlos a Excel, buscar cada cliente con BUSCARV y detectar referencias que no encajan.
El modelo se explica aquí con Access, disponible en Windows desde Access 2007 hasta Access 2024 y Microsoft 365. Excel 2007 y posteriores sirve para consultar y analizar los datos exportados.
Qué son las relaciones entre tablas de una base de datos
Una base de datos relacional distribuye la información en tablas conectadas. En el libro Tienda, la hoja Clientes guarda los datos de cada persona y la hoja Pedidos registra sus compras. El nombre y la dirección aparecen una vez; cada pedido contiene el Id cliente que señala a quién pertenece.
Este diseño evita duplicados y reduce errores. Si una cliente cambia su teléfono, se modifica en un único lugar y sus pedidos siguen coherentes. La conexión se realiza mediante claves: la clave primaria identifica cada registro y la clave externa apunta al registro de otra tabla.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Id pedido | Id cliente | Fecha | Total |
| 2 | 1 | 101 | 05/01/2026 | 45,00 |
| 3 | 2 | 102 | 05/01/2026 | 80,00 |
| 4 | 3 | 101 | 06/01/2026 | 25,00 |
| 5 | 4 | 103 | 06/01/2026 | 60,00 |
Las relaciones 1:1, 1:n y n:m describen cuántas filas pueden participar. El modelo relacional fue creado por Edgar F. Codd en 1970 y sigue siendo la base de productos como SQL Server, MySQL y PostgreSQL. La documentación de Microsoft sobre Access y Excel explica cuándo usar cada aplicación.
Claves primarias y claves externas: el vínculo entre los datos
Una clave primaria identifica de forma única una fila. En Clientes, esa clave es Id; en Pedidos, cada fila contiene una clave externa llamada Id cliente. Los valores de esa columna deben existir en la tabla de clientes.
Esa condición se denomina integridad referencial. Evita pedidos huérfanos y permite que Access propague cambios o impida operaciones incoherentes. La cardinalidad de la relación indica cuántas filas se vinculan:
| Tipo | Significado | Ejemplo en Tienda |
|---|---|---|
| 1:1 | Un registro con uno relacionado | Un cliente con una ficha de perfil |
| 1:n | Un registro con varios relacionados | Un cliente con muchos pedidos |
| n:m | Varios con varios | Pedidos y productos |
Las dos primeras se construyen vinculando una clave primaria con una clave externa. La relación n:m necesita una tabla intermedia que contenga ambas claves.
Una clave primaria identifica cada registro
La tabla Clientes utiliza la columna Id como clave primaria. Su valor debe ser único y no vacío: dos personas distintas no pueden compartir el mismo identificador.
| A | B | C | |
|---|---|---|---|
| 1 | Id | Nombre | Ciudad |
| 2 | 101 | Ana Ruiz | Madrid |
| 3 | 102 | Luis Gómez | Valencia |
| 4 | 103 | Sara León | Sevilla |
Si el Id 102 apareciera dos veces, Access no sabría a qué Luis Gómez pertenece un pedido. Por eso un identificador repetido es un error de diseño, no un detalle menor.
Una clave externa conecta dos tablas
La columna Id cliente de Pedidos es una clave externa: su valor apunta al Id de Clientes. Cada pedido de la tienda debe pertenecer a un cliente registrado.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Id pedido | Id cliente | Fecha | Total |
| 2 | 1 | 101 | 05/01/2026 | 45,00 |
| 3 | 2 | 102 | 05/01/2026 | 80,00 |
| 4 | 3 | 101 | 06/01/2026 | 25,00 |
| 5 | 4 | 103 | 06/01/2026 | 60,00 |
El 101 aparece dos veces porque Ana tiene dos pedidos. La repetición está en la clave externa, no en la primaria: eso es correcto en una relación 1:n.
Una tabla intermedia resuelve la relación varios a varios
Un pedido puede contener varios productos y un producto puede figurar en muchos pedidos. Para representar esa relación n:m, el libro añade una hoja Detalles.
| Id pedido | Id producto | Cantidad |
|---|---|---|
| 1 | 10 | 2 |
| 1 | 11 | 1 |
| 2 | 10 | 3 |
| 3 | 12 | 1 |
Detalles contiene una clave externa hacia Pedidos y otra hacia Productos. Las cantidades se guardan una sola vez por combinación de pedido y producto.
Crear una relación entre tablas desde Access
En Access, las relaciones se construyen en la vista Relaciones, disponible en Access 2007, 2010, 2013, 2016, 2019, 2021, 2024 y Microsoft 365. La vista coloca las tablas como diagramas y muestra sus vínculos.
Para preparar el ejercicio, crea en Access las tablas Clientes e Id, y Pedidos con Id pedido, Id cliente, Fecha y Total. Después:
- Abre la base de datos de la tienda.
- Entra en la pestaña Herramientas de base de datos.
- Selecciona Relaciones.
- Añade las tablas Clientes y Pedidos a la vista.
- Arrastra Id de Clientes hasta Id cliente de Pedidos.
- Confirma el vínculo en el cuadro Editar relaciones.
Elegir la tabla principal y la relacionada
En el diálogo Editar relaciones, Tabla/Consulta corresponde a la tabla principal, situada a la izquierda, y Tabla/Consulta relacionada a la secundaria, a la derecha.
Los campos que se conectan deben contener el mismo tipo de dato: aquí, ambos son números enteros. La tabla principal contiene la clave primaria; la relacionada, la clave externa.
Exigir integridad referencial y actualizar en cascada
Exigir integridad referencial impide guardar un pedido cuyo Id cliente no exista en Clientes. Actualizar en cascada los campos relacionados hace que, si cambias el Id 101 por 104, los pedidos de Ana adopten el 104.
| Acción | Con integridad referencial | Sin integridad referencial |
|---|---|---|
| Guardar pedido con Id cliente inexistente | Access lo rechaza | Puede guardarse |
| Cambiar Id cliente | Se actualizan los pedidos | Los pedidos conservan el valor antiguo |
| Eliminar cliente con pedidos | Bloquea o aplica la cascada elegida | Puede dejar pedidos huérfanos |
La cascada evita desajustes, pero modifica varias filas de una vez. Conviene revisar los datos antes de confirmar.
Cambiar o eliminar una relación existente
Para modificar un vínculo:
- Cierra las tablas, formularios y consultas que utilicen Clientes o Pedidos.
- Ve a Herramientas de base de datos > Relaciones.
- Selecciona la línea que une las tablas.
- En la pestaña Diseño, elige Modificar relaciones.
- Activa o desactiva las opciones de cascada y pulsa Aceptar.
Para eliminarla, selecciona la línea, pulsa Suprimir y confirma. Al borrar el vínculo también desaparece la integridad referencial asociada. La ayuda oficial explica el procedimiento en create, edit, or delete a relationship.
Llevar datos de Access a una hoja de Excel
Access conserva la base de datos y sus relaciones; Excel recibe una copia para calcular y presentar los datos. La exportación se hace desde Access con Datos externos > Exportar > Excel y, en Excel, con Datos > Obtener datos > Desde base de datos > Desde Microsoft Access.
| A | B | C | |
|---|---|---|---|
| 1 | Id | Nombre | Ciudad |
| 2 | 101 | Ana Ruiz | Madrid |
| 3 | 102 | Luis Gómez | Valencia |
| 4 | 103 | Sara León | Sevilla |
Excel organiza cálculos y análisis; Access almacena muchos registros relacionados y ofrece formularios e informes. La ayuda oficial de Microsoft explica este reparto.
Exportar dos tablas relacionadas a Excel
- En Access, abre Datos externos.
- Selecciona Exportar > Excel.
- Elige la carpeta de destino y el nombre del archivo.
- Repite la exportación con la tabla Pedidos.
- En Excel, abre cada archivo y revisa que la primera fila contenga los encabezados.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Id pedido | Id cliente | Fecha | Total |
| 2 | 1 | 101 | 05/01/2026 | 45,00 |
| 3 | 2 | 102 | 05/01/2026 | 80,00 |
| 4 | 3 | 101 | 06/01/2026 | 25,00 |
| 5 | 4 | 103 | 06/01/2026 | 60,00 |
Consultar Access desde Excel sin duplicar la base
En Excel, entra en Datos > Obtener datos > Desde base de datos > Desde Microsoft Access, selecciona el archivo y la tabla Clientes. Elige una ubicación para la importación y confirma.
La conexión mantiene Excel vinculado al archivo: al actualizar la consulta, Excel recupera los cambios guardados en Access. No debes escribir directamente sobre los datos importados, porque la siguiente actualización puede sobrescribir lo añadido.
Traer datos de Access con BUSCARV
Una vez exportadas las tablas, BUSCARV (VLOOKUP) permite unir la información en la hoja. En el libro, la hoja Resumen combina el Id cliente con su nombre.
- Crea una hoja llamada Resumen.
- Escribe Id cliente en A1 y Cliente en B1.
- Copia los Id de la hoja Clientes en A2:A4.
- En B2, escribe la fórmula de búsqueda.
- Arrastra el controlador de relleno hasta B4.
=BUSCARV(A2;$A$2:$B$4;2;FALSO)
| A | B | |
|---|---|---|
| 1 | Id cliente | Cliente |
| 2 | 101 | Ana Ruiz |
| 3 | 102 | Luis Gómez |
| 4 | 103 | Sara León |
Buscar el nombre correspondiente a cada Id cliente
BUSCARV busca en la primera columna de la matriz y devuelve una columna situada a su derecha. En $A$2:$B$4, busca el Id en A y devuelve el nombre de B.
La matriz se fija con $ porque la fórmula se copia hacia abajo: así, los signos $ evitan que Excel desplace el rango. Si pulsas F4 al seleccionar el rango, Excel añade esas referencias absolutas. En Mac, ese atajo es Cmd+T.
La hoja Pedidos puede usar la misma técnica para mostrar el nombre de cada comprador:
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Id pedido | Id cliente | Fecha | Total | Cliente |
| 2 | 1 | 101 | 05/01/2026 | 45,00 | Ana Ruiz |
| 3 | 2 | 102 | 05/01/2026 | 80,00 | Luis Gómez |
| 4 | 3 | 101 | 06/01/2026 | 25,00 | Ana Ruiz |
| 5 | 4 | 103 | 06/01/2026 | 60,00 | Sara León |
Evitar que la búsqueda encuentre un dato incorrecto
El cuarto argumento FALSO obliga a encontrar una coincidencia exacta. Sin él, BUSCARV hace una búsqueda aproximada: exige que la tabla esté ordenada y puede devolver el valor de otro registro sin avisar.
=BUSCARV(B2;$A$2:$B$4;2;FALSO)
| Cuarto argumento | Comportamiento |
|---|---|
| FALSO o 0 | Solo devuelve el dato que coincide exactamente |
| VERDADO o 1 | Busca el valor más próximo en una tabla ordenada |
Como Access ya impide referencias inválidas mediante integridad referencial, BUSCARV con FALSO reproduce en Excel la correspondencia exacta que existe en la base.
Comprobar y reparar datos que no encajan
Las relaciones solo funcionan si los identificadores son consistentes. Antes de actualizar Access o volver a exportar, el libro revisa tres fallos: referencias inexistentes, espacios ocultos y claves primarias repetidas.
Para detectar un Id cliente sin correspondencia:
- Copia los Id de Clientes en una columna auxiliar de la hoja Control.
- Copia los Id de Pedidos en otra columna.
- Compara ambas listas antes de modificar nada.
Un Id cliente que no existe en la tabla principal
| Tabla | Id | Observación |
|---|---|---|
| Clientes | 101 | Ana Ruiz |
| Clientes | 102 | Luis Gómez |
| Pedidos | 101 | Correcto |
| Pedidos | 104 | No existe en Clientes |
El pedido con Id 104 viola la integridad referencial. En Access con la integridad activa, no podrá guardarse. La corrección consiste en asignar el Id existente que corresponda o registrar al cliente que falta antes de crear el pedido.
| A | B | |
|---|---|---|
| 1 | Id Clientes | Id Pedidos |
| 2 | 101 | 101 |
| 3 | 102 | 102 |
| 4 | 103 | 104 |
Un valor escrito con espacios adicionales
Una celda con « 101 » no coincide con el número 101 en una búsqueda exacta. El espacio forma parte del texto y BUSCARV no lo ignora.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Id pedido | Id cliente | Fecha | Total | Cliente |
| 2 | 1 | 101 | 05/01/2026 | 45,00 | Ana Ruiz |
| 3 | 2 | 102 | 05/01/2026 | 80,00 | Luis Gómez |
| 4 | 3 | " 101" | 06/01/2026 | 25,00 | #N/A |
Para corregirlo, selecciona la celda, pulsa Ctrl+H, busca un espacio en «Buscar» y déjalo vacío en «Reemplazar con», y pulsa Reemplazar todo. Después, vuelve a escribir la fórmula.
Una clave primaria repetida en dos registros
| Id | Nombre | Ciudad |
|---|---|---|
| 101 | Ana Ruiz | Madrid |
| 102 | Luis Gómez | Valencia |
| 102 | Marta Gil | Bilbao |
El 102 aparece dos veces y Access no puede usarlo como clave primaria. Debes decidir cuál de los dos clientes conserva el 102, asignar un identificador distinto al otro y corregir sus pedidos mediante la actualización en cascada.
Actualizar una relación sin romper los datos vinculados
Una actualización puede alterar varios pedidos en segundos. La integridad referencial y las opciones de cascada controlan esa propagación; revisarlos antes de guardar evita cambios irreversibles.
Actualizar una clave que aparece en otra tabla
Supón que el Id 101 pasa a 104:
| Paso | Clientes | Pedidos |
|---|---|---|
| Antes | Id 101 | Id cliente 101 |
| Después | Id 104 | Id cliente 104 |
- Abre la tabla Clientes en Access.
- Cambia el valor 101 de Id por 104.
- Guarda el registro.
- Comprueba la tabla Pedidos.
Con Actualizar en cascada los campos relacionados activada, los pedidos con Id cliente 101 pasarán a 104. Sin ella, Access puede rechazar el cambio porque existirían referencias al identificador antiguo.
Eliminar un registro que tiene registros relacionados
- Selecciona el cliente con Id 101 en Clientes.
- Pulsa Suprimir.
- Revisa el mensaje de Access sobre los pedidos relacionados.
- Elige si permites la cascada o cancelas la eliminación.
Si Eliminar en cascada los registros relacionados está marcada, los pedidos de ese cliente también se borran. Si no, Access bloquea la eliminación porque dejaría pedidos huérfanos. Eliminar un cliente no borra sus pedidos por omisión: depende de la configuración de la relación.
Qué puede y qué no puede hacer Excel con Access
| Necesidad | Herramienta adecuada |
|---|---|
| Calcular, analizar y presentar datos | Excel |
| Guardar muchas tablas relacionadas | Access |
| Crear formularios e informes | Access |
| Impedir referencias inválidas | Access |
| Exportar tablas a una hoja | Access o Excel |
| Consultar Access sin copiar la base | Excel en Windows |
Access no tiene versión para Mac ni para la web. Excel sí funciona en Windows, Mac, web y móviles, pero su integración con Access se ejecuta como aplicación de escritorio en Windows. Una vez exportados los datos, las hojas de Excel son archivos independientes: perder el vínculo con Access no afecta a sus valores.
Lo que ya sabes hacer con las relaciones entre tablas
- Distingues una clave primaria de una clave externa.
- Identificas relaciones 1:1, 1:n y n:m.
- Compruebas que cada clave externa tenga una correspondencia.
- Exiges integridad referencial en Access.
- Exportas tablas relacionadas a Excel.
- Consultas Access desde Excel sin duplicar la base.
- Encuentras nombres con BUSCARV y el cuarto argumento FALSO.
- Detectas identificadores inexistentes, espacios y duplicados.
- Decides si un cambio se propaga en cascada.
- Limpias datos antes de actualizar una base.
El siguiente paso es abrir tu propia base de datos y dibujar en papel qué tabla identifica a cuál; ese esquema será la ruta para configurar los vínculos sin errores.
Los datos y las funciones de este tutorial están comprobados en octubre de 2026.
Dudas al relacionar tablas en Excel y Access
1. ¿Qué es una base de datos relacional y qué ejemplos hay?
Es una base de datos organizada en tablas conectadas mediante claves. Un ejemplo típico tiene una tabla Clientes y otra Pedidos: cada pedido guarda el Id del cliente que lo realizó. Esa relación evita repetir los datos del cliente en cada pedido.
2. ¿En qué se diferencia una base de datos relacional de una no relacional?
La base relacional organiza la información en tablas con filas y columnas y obliga a respetar las relaciones entre claves. La no relacional guarda documentos o pares clave-valor con estructuras flexibles. Excel prepara cálculos y análisis; Access administra tablas, formularios e informes conectados.
3. ¿Cómo se relacionan dos tablas en Access?
Abre la base de datos, entra en Herramientas de base de datos > Relaciones y arrastra el campo Id de la tabla Clientes hasta Id cliente de Pedidos. En el cuadro de diálogo activa «Exigir integridad referencial» y, si corresponde, «Actualizar en cascada los campos relacionados».
4. ¿Por qué BUSCARV devuelve #N/A al buscar un cliente?
Suele ocurrir porque el identificador no existe, está escrito con espacios adicionales o porque uno de los dos valores es texto y el otro es número. Revisa el dato en la tabla de origen y usa FALSO como cuarto argumento para exigir una coincidencia exacta.
5. ¿Puede eliminarse un cliente que tiene pedidos asociados?
Si la relación exige integridad referencial y tiene activada la eliminación en cascada, Access elimina también sus pedidos. Si esa opción está desactivada, Access bloquea la operación para proteger los datos. En ambos casos conviene revisar la configuración antes de confirmar.
6. ¿Excel puede ser la base de datos de una empresa?
Excel organiza cálculos, análisis y Geographical presentation, but Access stores and relates many records with forms, reports, and referential integrity. If Access is not installed, you can export tables to Excel or connect from Excel, but you lose the Access relationship management.
7. ¿En qué se diferencia Excel de Access?
Excel organiza cálculos, análisis y Geographical presentation, but Access stores and relates many records with forms, reports, and referential integrity. If Access is not installed, you can export tables to Excel or connect from Excel, but you lose the Access relationship management.
Fuentes
- MicrosoftBASE — documentación oficialconsultado el 23/10/2026
- MicrosoftExcel y Access — documentación oficialconsultado el 23/10/2026
- MicrosoftTabla dinámica — documentación oficialconsultado el 23/10/2026
- Microsoft#¡DIV/0! — documentación oficialconsultado el 23/10/2026
- MicrosoftIMPORTARDATOSDINAMICOS — documentación oficialconsultado el 23/10/2026