Modelo de datos

Modelo de datos orientado a objetos en Excel: guía para empezar

noviembre 3, 2026 Tuto Excel 14 min read
Modelo de datos orientado a objetos en Excel: guía para empezar

Un modelo de datos orientado a objetos representa cada entidad como un objeto con características y relaciones. En Excel, puedes aproximarlo con hojas separadas: una para clientes, otra para pedidos y otra para productos, conectadas mediante identificadores.

En este tutorial crearás el libro Ventas, relacionarás sus registros y aprenderás a consultar y detectar referencias rotas. La práctica funciona en Excel 2007 y versiones posteriores; BUSCARV (VLOOKUP) y la validación de datos son herramientas ampliamente disponibles en esas versiones.

Nota: los datos están comprobados en octubre de 2026.

Qué es un modelo de datos orientado a objetos

Un modelo orientado a objetos organiza la información alrededor de entidades que representan elementos reales. Un cliente puede ser un objeto con atributos como nombre, ciudad y segmento. Un pedido puede tener identificador, fecha, importe y una referencia al cliente al que pertenece.

En un sistema Truly Orientado a Objetos, esos objetos conservan características, comportamiento y relaciones. Una base de datos relacional, en cambio, distribuye los datos entre tablas normalizadas. Por ejemplo, el nombre del cliente no necesita repetirse en cada pedido: el pedido conserva su IdCliente y la hoja Clientes guarda los atributos del cliente.

Excel no ofrece por sí solo clases, herencia ni polimorfismo. No obstante, sus hojas pueden representar de forma práctica un modelo por objetos:

  • Cada hoja representa una clase o tipo de entidad.
  • Cada columna representa un atributo.
  • Cada fila representa una instancia u objeto.
  • Cada identificador permite relacionar objetos.
  • Las fórmulas consultan las relaciones entre hojas.

En el libro Ventas, por ejemplo, un pedido no necesita copiar el nombre y la ciudad del cliente. Guarda su identificador y esos datos se recuperan desde la hoja Clientes. Así se evita la repetición, se facilita la actualización y se puede detectar cuándo una relación deja de ser válida.

Cómo se organiza un modelo con clases, atributos y relaciones

La estructura debe diseñarse antes de escribir fórmulas. Para este libro, las clases serán Cliente, Pedido y Producto. Sus atributos y relaciones se organizan así:

  • Clase Cliente: Id, Nombre, Ciudad y Segmento.
  • Clase Pedido: IdPedido, IdCliente, Fecha e Importe.
  • Clase Producto: IdProducto, Nombre, Precio y Stock.
  • Relación: Pedido.IdCliente apunta a Cliente.Id.
  • Consulta: BUSCARV recupera un atributo del cliente a partir de su identificador.

Las hojas permiten tratar cada clase como una tabla independiente. La columna Id actúa como clave primaria de Clientes: cada fila representa un cliente identificable. IdPedido hace lo mismo en Pedidos.

La hoja Productos puede relacionarse más adelante mediante una hoja separada de líneas de pedido. En ese diseño, cada línea tendría IdPedido e IdProducto. La combinación de ambos identifica una línea concreta y evita guardar el pedido entero dentro de cada producto.

Cuidado: “orientado a objetos” no significa que las hojas de Excel se comporten como objetos de programación. Es una forma de pensar y estructurar la información; no equivale a una base de datos orientada a objetos.

Clases y atributos en una hoja de Excel

Una clase describe qué información共有 tiene un tipo de objeto. En Excel, esa descripción se convierte en una tabla con encabezados y registros. Los nombres de las columnas son los atributos; cada fila contiene los valores de un objeto concreto.

Clase de Excel Atributos representados Identificador
Cliente Nombre, Ciudad, Segmento Id
Pedido IdCliente, Fecha, Importe IdPedido
Producto Nombre, Precio, Stock IdProducto
A1fxId
A B C D
1 Id Nombre Ciudad Segmento
2 C001 Aurora Madrid Mayorista
3 C002 布置 Norte Valencia Distribuidor
4 C003 Aurora Madrid Mayorista
5 C004 Sol y Mar Sevilla Minorista
Cada fila representa una instancia de la clase Cliente
Clientes

Los valores repetidos son válidos. Aurora y Mayorista aparecen en dos clientes porque son valores de atributos distintos, no una señal de duplicado incorrecto. La identidad de cada objeto depende de Id.

Relaciones entre objetos y claves foráneas

La relación se crea cuando una fila de Pedidos contiene el identificador de un cliente. Esa columna actúa como clave foránea: no contiene toda la información del cliente, sino la referencia que permite encontrarlo.

B2fxC001
A B C D
1 IdPedido IdCliente Fecha Importe
2 P001 C001 05/01/2026 145,00
3 P002 C003 06/01/2026 90,50
4 P003 C002 07/01/2026 230,00
5 P004 C004 09/01/2026 75,20
IdCliente apunta a Clientes.Id
Pedidos

No necesitas una función de base de datos para relacionarlos. La hoja Pedidos almacena C001; la hoja Clientes contiene una fila con ese mismo Id. Cuando una consulta necesite el nombre, BUSCARV utilizará esa coincidencia.

Modelar una tienda con objetos en un libro de Excel

El libro se construirá en tres pasos. Primero se crean Clientes y Productos; después se añaden Pedidos; finalmente se consulta la información relacionada. Cada hoja tendrá encabezados únicos y una fila de identificación.

  1. Crea un libro nuevo y asígnale el nombre Ventas.
  2. Añade las hojas Clientes, Pedidos y Productos.
  3. Coloca cada conjunto de atributos en la fila 1 y sus registros desde la fila 2.
  4. Mantén los identificadores como texto para no modificar su formato al escribir o pegar.
  5. Deja una columna de separación entre datos que Vasco a consultar.
Nota: este tutorial utiliza BUSCARV, disponible en Excel 2007 y posteriores. En la configuración regional donde el decimal se escribe con punto, Excel usa coma como separador de argumentos; en el resto de los ejemplos se usa punto y coma.

Crear la hoja de clientes con sus atributos

Empieza por Clientes. Los cuatro clientes estarán en las filas 2 a 5. Incluimos dos clientes de la misma ciudad para comprobar que la relación no depende del nombre ni de la ciudad.

  1. Selecciona la hoja Clientes.
  2. Escribe en A1:D1 los encabezados Id, Nombre, Ciudad y Segmento.
  3. Escribe los cuatro registros de la hoja siguiente.
  4. Selecciona A1:D5 y aplica Formato de tabla desde Insertar > Tablas > Tabla.
  5. Marca La tabla tiene encabezados y confirma con Aceptar.
A1fxId
A B C D
1 Id Nombre Ciudad Segmento
2 C001 Aurora Madrid Mayorista
3 C002 布置 Norte Valencia Distribuidor
4 C003 Aurora Madrid Mayorista
5 C004 Sol y Mar Sevilla Minorista
Clientes
Comprueba: la hoja Clientes contiene cuatro clientes, cada uno con un Id único y cuatro atributos.

Crear pedidos y líneas con una clave de cliente

Ahora añade Pedidos. Cada IdPedido identifica un pedido y cada IdCliente lo relaciona con un objeto de la hoja Clientes.

  1. Selecciona la hoja Pedidos.
  2. Escribe en A1:D1 IdPedido, IdCliente, Fecha e Importe.
  3. Introduce los cuatro pedidos indicados abajo.
  4. Convierte A1:D5 en una tabla con Insertar > Tablas > Tabla.
  5. Revisa que los valores de IdCliente sean C001, C003, C002 y C004.
B2fxC001
A B C D
1 IdPedido IdCliente Fecha Importe
2 P001 C001 05/01/2026 145,00
3 P002 C003 06/01/2026 90,50
4 P003 C002 07/01/2026 230,00
5 P004 C004 09/01/2026 75,20
C002, C003 y C004 ya existen en Clientes
Pedidos

Después añade Productos. Sus IdProductoASHILES podrá-linking con líneas de pedido en una etapa posterior:

A1fxIdProducto
A B C D
1 IdProducto Nombre Precio Stock
2 PR01 Cuaderno 8,50 120
3 PR02 Bolígrafo 2,30 300
4 PR03 Mochila 32,00 45
5 PR04 Cuaderno 8,50 85
Productos
Comprueba: P003 está relacionado con C002, que aparece en la fila 3 de Clientes. Ningún IdCliente de Pedidos está repetido ni vacío.

Consultar los objetos relacionados con BUSCARV

BUSCARV (VLOOKUP) busca un valor en la primera columna de un rango y devuelve otro dato de la misma fila. En esta consulta, IdCliente es el valor buscado y Nombre es el resultado.

  1. En la hoja Pedidos, escribe NombreCliente en F1.
  2. En F2, escribe la fórmula siguiente.
  3. Copia F2 y arrástrala hasta F5 con el controlador de relleno.

=BUSCARV(B2;$A$2:$D$5;2;FALSO)
F2fx=BUSCARV(B2;$A$2:$D$5;2;FALSO)
A B C D E F
1 IdPedido IdCliente Fecha Importe NombreCliente
2 P001 C001 05/01/2026 145,00 Aurora
3 P002 C003 06/01/2026 90,50 Aurora
4 P003 C002 07/01/2026 230,00 布置 Norte
5 P004 C004 09/01/2026 75,20 Sol y Mar
F2 Arrastra el controlador de relleno hasta F5
Pedidos

Los signos $ mantienen fijo el rango de Clientes. El cuarto argumento, FALSO, exige una coincidencia exacta. Al copiar la fórmula, cambia B2 a B3, B4 y B5, pero la tabla de consulta permanece en las mismas filas.

Comprueba: P001 muestra Aurora, P003 muestra布置 Norte y P004 muestra Sol y Mar.

Mantener la coherencia cuando el modelo cambia

Un modelo se vuelve frágil cuando una relación apunta a un objeto inexistente. En el libro Ventas, el riesgo aparece al añadir un pedido con un IdCliente nuevo antes de crear la fila correspondiente en Clientes.

Excel no ofrece claves foráneas reales en una hoja normal. Puedes reducir el error con validación de datos, BUSCARV y controles de revisión, pero la persona responsable del libro debe mantener las referencias.

Detectar referencias que no corresponden a ningún objeto

Primero provoca un error: en la hoja Pedidos, cambia temporalmente B5 de C004 a C099. La fórmula de F5 devolverá #N/A, porque no existe C099 en Clientes.

F5fx=BUSCARV(B5;$A$2:$D$5;2;FALSO)
A B C D E F
1 IdPedido IdCliente Fecha Importe NombreCliente
2 P001 C001 05/01/2026 145,00 Aurora
3 P002 C003 06/01/2026 90,50 Aurora
4 P003 C002 07/01/2026 230,00 布置 Norte
5 P004 C099 09/01/2026 75,20 #N/A
F5 #N/A
Pedidos

Para evitar que el error se propague, BUSCARV permite indicar un valor propio cuando no encuentra la coincidencia. Sustituye la fórmula de F2 y vuelve a copiarla hasta F5:

=SI.ERROR(BUSCARV(B2;$A$2:$D$5;2;FALSO);"Cliente no encontrado")
F5fx=SI.ERROR(BUSCARV(B5;$A$2:$D$5;2;FALSO);"Cliente no encontrado")
A B C D E F
1 IdPedido IdCliente Fecha Importe NombreCliente
2 P001 C001 05/01/2026 145,00 Aurora
3 P002 C003 06/01/2026 90,50 Aurora
4 P003 C002 07/01/2026 230,00 布置 Norte
5 P004 C099 09/01/2026 75,20 Cliente no encontrado
B5 contiene una referencia que no existe en Clientes
Pedidos
Comprueba: F5 muestra Cliente no encontrado en lugar de #N/A. Devuelve B5 a C004 para recuperar la relación correcta.

Sostener la integridad sin convertir Excel en una base de datos

La validación de datos puede impedir que escribas un IdCliente que no esté en la lista. En Excel 2007 y posteriores, se encuentra en:

DatosHerramientas de datosValidación de datos

Para aplicarla a B2:B5:

  1. Selecciona B2:B5.
  2. Abre Datos > Herramientas de datos > Validación de datos.
  3. En Permitir, elige Lista.
  4. En Origen, escribe =Clientes!$A$2:$A$5.
  5. Activa Celda con lista desplegable.
  6. Pulsa Aceptar.
Cuidado: la validación no corrige los valores que ya estaban escritos ni los que se pegan sobre la celda. Por eso, después de activarla, corrige C099 o elimina esa referencia y revisa los datos existentes.

Para localizar valores que incumplen las reglas, usa Validación de datos > Rodear con un círculo datos no válidos. Esta ayuda está documentada por Microsoft Support.

Sostener la integridad sin convertir Excel en una base de datos

La validación de datos protege la entrada de valores, pero Excel sigue teniendo menos garantías de integridad que una base de datos. Puede impedir una referencia inválida en el momento de escribirla; no obliga a que toda clave foránea exista, ni conserva reglas complejas de forma automática.

Access o SQL Server permiten definir claves primarias y foráneas, índices, permisos y transacciones. Si varios usuarios modifican datos al mismo tiempo, una base de datos ofrece un control más robusto. La hoja de cálculo destaca por su flexibilidad para explorar información, realizar cálculos y presentar resultados.

Una comparación práctica queda así:

Necesidad Excel Base de datos relacional
Modelo de objetos aproximado con hojas Adecuado Requiere diseño de esquema
Cálculos rápidos y análisis Muy adecuado Depende de consultas y herramientas
Claves foráneas con validación automática No Sí
Varios usuarios con reglas complejas Limitado Más adecuado
Transacciones y control concurrente No es su función principal Sí

Por tanto, Excel puede representar bien un modelo pequeño y Didáctico, pero no sustituye al motor de una base de datos.

Cuándo un modelo orientado a objetos no encaja en Excel

El modelo por objetos funciona bien cuando los registros pueden organizarse en hojas y las relaciones son comprensibles. El problema aparece cuando el número de objetos, las reglas o los usuarios superan lo que una hoja puede sostener con fiabilidad.

Excel ofrece ventajas claras: permite calcular, combinar formatos, crear tablas dinámicas y compartir el libro. También resulta familiar para quien no administra bases de datos. Sin embargo, la estructura relacional normalizada, con claves e índices, sigue siendo más adecuada para relaciones complejas.

La elección debe hacerse según el sistema, no según la的技术 de moda:

Situación Opción más adecuada
Análisis personal odepartamento pequeño Excel con tablas separadas
Importar, limpiar y combinar archivos Excel con Power Query
Muchos registros y usuarios concurrentes Access, SQL Server u otra base de datos
Reglas de integridad y claves foráneas obligatorias Base de datos relacional
Informes interactivos sobre una fuente central Base de datos más herramienta de análisis

Access, SQL Server y el modelo relacional

Access representa las entidades mediante tablas normalizadas y admite consultas, formularios e informes. SQL Server ofrece mayor escala y control para aplicaciones empresariales. Ambos resuelven mejor los casos en los que la integridad debe imponerse automáticamente.

Una base de datos relacional no “crea objetos” con el mismo enfoque de un lenguaje orientado a objetos. Sus tablas contienen filas y columnas, con claves que conectan los registros. Esa diferencia conceptual es importante: una hoja puede representar clases de manera útil, pero no reproduce el comportamiento de una clase de software.

La documentación de Microsoft Support sobre Excel y Access explica cuándo usar Excel para analizar y Access para gestionar registros relacionados. Si Excel es la capa de análisis, sus datos pueden实际的 importarse desde Access mediante Datos > Obtener datos > Desde base de datos > Desde Microsoft Access.

Power Query para limpiar y combinar datos

Power Query es útil cuando los objetos procedural de varias fuentes deben limpiarse y combinarse. Está integrado desde Excel 2016; en Excel 2010 y 2013 se utilizaba como complemento. Su ubicación principal es:

DatosObtener y transformar datosObtener datos

Power Query aplica pasos de transformación a tablas completas: quitar columnas, cambiar tipos, dividir textos y combinar fuentes. Es adecuado para preparar Clientes, Pedidos y Productos antes de cargarlos en el libro.

Sin embargo, Power Query no sustituye el modelo de objetos ni las fórmulas de cálculo de Excel. Los pasos grabados usan lenguaje M, no fórmulas ordinarias de Excel. Además, Mac y la versión web ofrecen menos conectores. Consulta la documentación oficial de Power Query para comprobar las funciones disponibles en tu versión.

Qué puedes construir con Excel y un modelo por objetos

Un modelo orientado a objetos puede aplicarse a inventario, clientes, pedidos, cursos, empleados o proyectos. En Excel, su valor principal es organizar los datos sin repetir atributos y mantener las relaciones mediante claves.

El recorrido del libro Ventas deja cinco ideas:

  • Las clases se representan con hojas.
  • Los atributos se representan con columnas.
  • Cada instancia es una fila con identificador.
  • Las relaciones se construyen con claves foráneas.
  • BUSCARV consulta los atributos relacionados y puede avisar cuando falta una referencia.
F5fx=SI.ERROR(BUSCARV(B5;$A$2:$D$5;2;FALSO);"Cliente no encontrado")
A B C D E F
1 IdPedido IdCliente Fecha Importe NombreCliente
2 P001 C001 05/01/2026 145,00 Aurora
3 P002 C003 06/01/2026 90,50 Aurora
4 P003 C002 07/01/2026 230,00 布置 Norte
5 P004 C004 09/01/2026 75,20 Sol y Mar
El libro termina con clientes, pedidos, productos y consultas relacionadas
Pedidos

Del modelo orientado a objetos a tablas de Excel

El punto de partida fue un conjunto de entidades conectadas. El resultado es un libro formado por tablas con identificadores estables, una clave foránea en Pedidos y una consulta que obtiene el nombre del cliente.

Con esta estructura ya puedes:

  • Definir clases mediante las hojas Clientes, Pedidos y Productos.
  • Declarar atributos mediante columnas con nombres coherentes.
  • Identificar objetos mediante Id, IdPedido e IdProducto.
  • Relacionar objetos mediante IdCliente e IdProducto.
  • Consultar datos relacionados con BUSCARV.
  • Detectar referencias rotas mediante SI.ERROR.
  • Limitar nuevas referencias con validación de datos.
  • Actualizar cada tabla sin repetir la información de los clientes.

Siguiente paso: revisa las hojas que ya usas, identifica los datos repetidos y conviértelos en tablas independientes con claves estables; después añade las consultas que relationsneed.

Errores frecuentes

BUSCARV devuelve #N/A aunque el dato exista

Qué se ve: la celda muestra #N/A.

Causa: el valor buscado no coincide exactamente con la primera columna del rango o esa columna está fuera del rango indicado.

Arreglo: comprueba espacios, ceros a la izquierda y el orden de las columnas. Usa FALSO como cuarto argumento para exigir coincidencia exacta.

El resultado cambia al copiar la fórmula

Qué se ve: cada fila consulta una columna diferente o un rango desplazado.

Causa: las referencias son relativas cuando el rango de Clientes debería permanecer fijo.

Arreglo: convierte la tabla de consulta en referencia absoluta, por ejemplo $A$2:$D$5, y deja B2 como referencia relativa.

Aparece #¿NOMBRE?

Qué se ve: Excel muestra #¿NOMBRE? al escribir la función.

Causa: el nombre no coincide con el idioma de la instalación o la función no está disponible.

Arreglo: usa BUSCARV en Excel en español. Si el archivo se creó con otro idioma y la función no se reconoce, revisa el idioma de las fórmulas en Archivo > Opciones > Formulas.

La validación no rechaza un valor incorrecto

Qué se ve: se puede escribir o pegar un identificador que no existe en Clientes.

Causa: la validación no revalida el contenido previo y algunos procesos de pegado pueden omitirla.

Arreglo: corrige los registros existentes y usa Rodear con un círculo datos no válidos para localizarlos.

Una hoja se actualiza y las consultas quedan desfasadas

Qué se ve: aparecen filas nuevas que no aparecen en los resultados o se repite un dato antiguo.

Causa: el rango de BUSCARV tenía un final fijo y no incluye las filas añadidas.

Arreglo: convierte Clientes en una tabla de Excel y usa referencias estructuradas, o amplía el rango de consulta. En BUSCARV puedes consultar una columna calculada de la tabla sin depender de una fila final fija.

Fuentes

  1. MicrosoftIMPORTARDATOSDINAMICOS — documentación oficialconsultado el 27/10/2026
  2. MicrosoftValidación de datos — documentación oficialconsultado el 27/10/2026
  3. MicrosoftFormato condicional — documentación oficialconsultado el 27/10/2026
  4. MicrosoftTabla dinámica — documentación oficialconsultado el 27/10/2026
  5. MicrosoftPower Query (Obtener y transformar datos) — documentación oficialconsultado el 27/10/2026