SQL

Funciones de base de datos en Excel: guía para empezar

octubre 23, 2026 Tuto Excel 17 min read
Funciones de base de datos en Excel: guía para empezar

Las funciones de base de datos de Excel (la familia que empieza por BD, como BDSUMA, BDCONTAR o BDEXTRAER) sirven para hacer cálculos sobre una hoja con títulos en la primera fila, filtrando por un criterio que tú escribes en una mini tabla aparte. Si tienes una hoja de ventas y quieres saber cuánto se vendió en la zona Norte, cuál fue el pedido más alto del Sur o cuántos albaranes firmó Marta, estas funciones te lo dan en una sola celda.

Al terminar el tutorial sabrás montar la zona de criterios, escribir las funciones de la familia BD con sus argumentos separados por punto y coma y leer los errores más típicos. Sirven en todas las versiones de Excel de escritorio desde la 2003, en Excel para la web, en Mac y en la app para móviles, así que no importa con cuál trabajes.

Nota sobre el separador: los argumentos en este artículo se escriben con punto y coma (;) porque así los muestra Excel en español. Si tu Excel está configurado con punto decimal (México, Estados Unidos), el separador es la coma: ,.

Qué resuelve una función de base de datos en Excel

Imagina una hoja de ventas con cientos de filas: una columna con la zona (Norte, Sur, Este, Oeste), otra con el producto (Mesa, Silla, Armario) y otra con el importe del pedido. Si quieres saber cuánto se vendió en la zona Norte, podrías ordenar la hoja y sumar a ojo, pero eso es lento y se presta a errores. Cada vez que entra un pedido nuevo, además, tienes que volver a hacerlo.

Las funciones de base de datos resuelven esto: le pasas a Excel el rango de datos, la columna sobre la que quieres calcular y una mini tabla con los filtros, y te devuelve el resultado ya calculado. No tocas la hoja original, no ordenas nada, no borras filas. Solo cambias lo que escribes en la zona de criterios y el resultado se actualiza solo.

La idea clave es que los datos estén bien organizados: una fila de cabeceras arriba (Zona, Producto, Importe) y las filas de datos debajo, sin huecos. Eso es lo único que Excel necesita para entender qué es un título y qué es un dato.

La regla que todas cumplen: títulos, rango y criterios

Todas las funciones de la familia BD funcionan igual: les das tres cosas. Primera, el rango de datos completo incluyendo la fila de cabeceras (por ejemplo A1:C9). Segunda, el nombre entre comillas de la columna sobre la que calcular (en este caso "Importe"). Tercera, el rango de criterios: una mini tabla aparte con sus propios títulos y los valores que quieres filtrar.

Los títulos del rango de criterios tienen que ser iguales a los de los datos. Si arriba tienes Zona, la celda del criterio también tiene que decir Zona; si escribes zona en minúscula o Región, Excel no encuentra la coincidencia y devuelve 0 o #¡NUM!.

Esta es la hoja de ventas que vamos a usar en todo el tutorial, con 8 pedidos de tres zonas:

A1fx**Zona**
A B C
1 Zona Producto Importe
2 Norte Mesa 120,00
3 Norte Silla 45,00
4 Sur Mesa 200,00
5 Sur Armario 340,00
6 Norte Armario 280,00
7 Este Silla 60,00
8 Oeste Mesa 150,00
9 Norte Silla 75,00
Ventas

La zona de criterios va a vivir en las celdas E1:E2, con el título Zona en E1 y el valor Norte en E2. Ese par de celdas es la pieza que filtra los datos.

Las funciones de la familia BD y para qué sirve cada una

Función Inglés Qué devuelve Cuándo conviene sobre SUMAR.SI / CONTAR.SI
BDSUMA DSUM La suma de los importes que cumplen el criterio Cuando ya tienes una zona de criterios montada y vas a reutilizarla para varias funciones a la vez
BDCONTAR DCOUNT Cuántas filas cumplen el criterio y tienen un número en la columna indicada Para contar registros con números (ignora celdas vacías en esa columna)
BDCONTARA DCOUNTA Cuántas filas cumplen el criterio y no están vacías en la columna indicada Para contar cualquier dato, incluidos textos
BDPROMEDIO DAVERAGE La media de los importes que cumplen el criterio Para sacar promedios por zona, por vendedor, por mes, etc.
BDMAX DMAX El valor más alto de los que cumplen el criterio Para saber el pedido más grande de una zona
BDMIN DMIN El valor más bajo de los que cumplen el criterio Para saber el pedido más pequeño de una zona
BDPRODUCTO DPRODUCT El producto de los valores que cumplen el criterio Poco habitual; se usa con factores o tipos de cambio
BDEXTRAER DGET El valor de la columna indicada en la única fila que cumple el criterio Para sacar un dato concreto cuando solo hay un resultado

La ventaja frente a SUMAR.SI o CONTAR.SI es que toda la lógica del filtro vive en la zona de criterios: si cambias Norte por Sur ahí, todas las funciones que apunten a esa zona se actualizan a la vez. Con SUMAR.SI, en cambio, la condición va dentro de la propia fórmula y hay que editar cada una.

Cuidado: todas estas funciones son 区分 entre mayúsculas y minúsculas solo en el texto del título, no en el valor. "zona" y "Zona" se tratan igual; "ZONA" también. Lo que importa es que el título sea idéntico al de la fila 1.

Dónde se escriben los criterios para que la función los entienda

La zona de criterios es una mini tabla con su propia fila de cabeceras. Vamos a montarla a la derecha de los datos, en las columnas E y F.

  1. Selecciona la celda E1 y escribe Zona.
  2. Pulsa Entrar y en E2 escribe Norte.
  3. Selecciona la celda F1 y escribe Importe.
  4. En F2 deja el valor en blanco por ahora; aquí pondremos después comparaciones como >100.
E2fxNorte
A B C E F
1 Zona Producto Importe Zona Importe
2 Norte Mesa 120,00 Norte
3 Norte Silla 45,00
4 Sur Mesa 200,00
5 Sur Armario 340,00
6 Norte Armario 280,00
7 Este Silla 60,00
8 Oeste Mesa 150,00
9 Norte Silla 75,00
Ventas
Comprueba: E1 muestra Zona y E2 muestra Norte. Si escribes norte en minúscula, la fórmula también funciona porque el filtro de las funciones BD no distingue mayúsculas en el valor, solo en el título.

Un criterio en una sola fila

El caso más sencillo: una sola condición. Con Zona = Norte escrito en E1:E2, le pedimos a BDSUMA que sume la columna Importe de las filas que cumplen ese único criterio.

G3fx=BDSUMA(A1:C9;"Importe";E1:E2)
A B C E F G
1 Zona Producto Importe Zona Importe
2 Norte Mesa 120,00 Norte
3 Norte Silla 45,00 520,00
4 Sur Mesa 200,00
5 Sur Armario 340,00
6 Norte Armario 280,00
7 Este Silla 60,00
8 Oeste Mesa 150,00
9 Norte Silla 75,00
Ventas
Comprueba: la celda G3 muestra 520,00. Es la suma de 120 + 45 + 280 + 75, los cuatro pedidos del Norte.

Varios criterios en la misma fila, concepto Y

Si quieres que se cumplan dos cosas a la vez (por ejemplo, Norte y con importe mayor que 100), escribe los dos criterios en la misma fila de la zona de criterios. Excel los une con un Y lógico: solo pasan las filas que cumplan ambos.

F2fx>100
A B C E F
1 Zona Producto Importe Zona Importe
2 Norte Mesa 120,00 Norte >100
3 Norte Silla 45,00
4 Sur Mesa 200,00
5 Sur Armario 340,00
6 Norte Armario 280,00
7 Este Silla 60,00
8 Oeste Mesa 150,00
9 Norte Silla 75,00
Ventas
Comprueba: al recalcular BDSUMA(A1:C9;"Importe";E1:F2), Excel suma solo 120 + 280 = 400,00. El pedido de 45 no entra por ser menor que 100, y el de 75 tampoco.

Criterios en filas distintas, concepto O

Si quieres que se cumpla una cosa u otra (Norte o Sur), apila las dos filas de criterio una debajo de otra, dejando una fila en blanco entre medias para que Excel las lea como dos bloques separados. Las une con un O lógico: pasan las filas que cumplan cualquiera de las dos.

E4fxSur
A B C E F
1 Zona Producto Importe Zona Importe
2 Norte Mesa 120,00 Norte
3 Norte Silla 45,00
4 Sur Mesa 200,00 Sur
5 Sur Armario 340,00
6 Norte Armario 280,00
7 Este Silla 60,00
8 Oeste Mesa 150,00
9 Norte Silla 75,00
Ventas
Consejo: la fila en blanco entre E2 y E4 no es opcional. Si pones Norte en E2 y Sur en E3 pegados, Excel los lee como una sola fila de criterios y aplica un Y lógico, no un O.

Sumar, contar y promediar solo lo que cumple una condición

Con la zona de criterios ya montada, escribimos las cuatro fórmulas clave en una zona de resultados para verlas a la vez. Vamos a usar el criterio simple Zona = Norte (celdas E1:E2).

  1. En G1 escribe Suma, en G2 Cuenta números, en G3 Cuenta todo, en G4 Promedio.
  2. En H1 escribe la fórmula de suma; en H2 la de contar números; en H3 la de contar todo; en H4 la de promedio.
H1fx=BDSUMA(A1:C9;"Importe";E1:E2)
A B C E F G H
1 Zona Producto Importe Zona Importe Suma 520,00
2 Norte Mesa 120,00 Norte Cuenta números 4
3 Norte Silla 45,00 Cuenta todo 4
4 Sur Mesa 200,00 Promedio 130,00
5 Sur Armario 340,00
6 Norte Armario 280,00
7 Este Silla 60,00
8 Oeste Mesa 150,00
9 Norte Silla 75,00
Ventas
Comprueba: la suma es 520, el recuento de números es 4, el recuento de todo es 4 y el promedio es 130,00 (520 dividido entre 4).

BDSUMA: el total de los importes que cumplen el criterio

BDSUMA es la función más usada de la familia. Recibe tres argumentos: el rango de datos (incluyendo la fila de cabeceras), el nombre de la columna a sumar entre comillas, y el rango de criterios.

=BDSUMA(A1:C9;"Importe";E1:E2)
Consejo: en lugar de "Importe" puedes usar el número de columna dentro del rango: 3 (porque Importe es la tercera columna de A1:C9). Pero con el nombre se entiende mejor.

BDCONTAR y BDCONTARA: contar números y contar cualquier cosa

BDCONTAR solo cuenta filas que tengan un número en la columna indicada (y que cumplan el criterio). BDCONTARA cuenta filas que tengan cualquier cosa en esa columna, incluido un texto. Si la columna Importe siempre tiene números, las dos devolverán lo mismo.

=BDCONTAR(A1:C9;"Importe";E1:E2)
=BDCONTARA(A1:C9;"Importe";E1:E2)
Cuidado: si una celda de Importe está vacía en una fila que sí cumple el criterio, BDCONTAR no la cuenta; BDCONTARA sí. Esto pasa cuando, por ejemplo, aún no se ha cargado el importe de un pedido.

BDPROMEDIO: la media solo de lo filtrado

BDPROMEDIO divide la suma de los importes que cumplen el criterio entre el número de filas que también lo cumplen. Si una fila cumple el criterio pero su importe está vacío, no entra ni en el numerador ni en el denominador.

=BDPROMEDIO(A1:C9;"Importe";E1:E2)
Comprueba: con la zona Norte, BDPROMEDIO devuelve 130,00, que es 520 / 4. Si vacías el importe de una de las cuatro filas del Norte, el promedio pasa a ser 520 / 3 = 173,33.

Sacar el mayor, el menor y un valor concreto del filtro

Además de sumar, contar y promediar, la familia BD tiene funciones para sacar el valor más alto, el más bajo y un valor concreto de un único resultado.

BDMAX y BDMIN: el importe más alto y el más bajo del criterio

Con la zona Norte, el pedido más alto es el Armario de 280 y el más bajo es la Silla de 45.

=BDMAX(A1:C9;"Importe";E1:E2)
=BDMIN(A1:C9;"Importe";E1:E2)
H7fx=BDMAX(A1:C9;"Importe";E1:E2)
A B C E F G H
1 Zona Producto Importe Zona Importe Suma 520,00
2 Norte Mesa 120,00 Norte Cuenta números 4
3 Norte Silla 45,00 Cuenta todo 4
4 Sur Mesa 200,00 Promedio 130,00
5 Sur Armario 340,00
6 Norte Armario 280,00 Más alto 280,00
7 Este Silla 60,00 Más bajo 45,00
8 Oeste Mesa 150,00
9 Norte Silla 75,00
Ventas
Comprueba: H6 muestra 280,00 y H7 muestra 45,00. Si cambias Norte por Sur en E2, los dos valores se recalculan a 340,00 y 200,00.

BDEXTRAER: la fila exacta que cumple una condición única

BDEXTRAER devuelve el valor de una columna concreta en la única fila que cumple el criterio. Si hay más de una fila, da error. Se usa cuando sabes que solo hay un resultado, por ejemplo, el precio de un producto por su código.

=BDEXTRAER(A1:C9;"Importe";E1:F2)
E1fx**Producto**
A B C E F
1 Zona Producto Importe Producto
2 Norte Mesa 120,00 Mesa
3 Norte Silla 45,00
4 Sur Mesa 200,00
5 Sur Armario 340,00
6 Norte Armario 280,00
7 Este Silla 60,00
8 Oeste Mesa 150,00
9 Norte Silla 75,00
Ventas
Cuidado: con la zona Norte y producto Mesa solo hay un resultado (120,00) y la fórmula funciona. Pero con la zona Norte sola hay cuatro filas y BDEXTRAER devuelve #¡NUM!. Si el criterio deja más de una fila, la función no sabe cuál sacar.

Criterios con comparaciones, texto y comodines

Hasta ahora hemos usado Norte como criterio, pero las funciones BD aceptan comparaciones y comodines igual que SUMAR.SI.CONJUNTO o CONTAR.SI.CONJUNTO.

Mayor que, menor que, entre dos valores

En la zona de criterios, el valor numérico se puede escribir como >100, <200, >=50, <=300 o <>0 (distinto de cero). Para conseguir un rango entre dos valores, escribe los dos en la misma fila (es un Y lógico).

F1fx**Importe**
A B C E F
1 Zona Producto Importe Importe Importe
2 Norte Mesa 120,00 >50 <200
3 Norte Silla 45,00
4 Sur Mesa 200,00
5 Sur Armario 340,00
6 Norte Armario 280,00
7 Este Silla 60,00
8 Oeste Mesa 150,00
9 Norte Silla 75,00
Ventas

=BDSUMA(A1:C9;"Importe";E1:F2)
Comprueba: la fórmula suma solo los importes mayores que 50 y menores que 200: 120 + 60 + 150 + 75 = 405,00. El de 45 queda fuera por menor que 50; el de 200 y el de 280 quedan fuera por mayores o iguales que 200.

Comodines para texto: empieza por, contiene, acaba en

Para los criterios de texto, Excel entiende tres comodines: * (cero o más caracteres), ? (un solo carácter) y ~ para escapar el comodín cuando el texto lo lleva de verdad.

  • M* empieza por M (Mesa, pero también cualquier otro).
  • *a acaba en a (Mesa, Silla no).
  • M?sa es un patrón de cuatro letras con M al principio, sa al final y una letra intermedia.
  • =Mesa (con el = delante) es la coincidencia exacta; lo mismo que escribir solo Mesa.

=BDCONTAR(A1:C9;"Producto";E1:E2)
Comprueba: con Producto = M* en la celda de criterio, la fórmula cuenta los productos que empiezan por M: en la hoja hay dos Mesas y ninguna otra M, así que devuelve 2.

Por qué la fórmula no devuelve lo que esperas

Las funciones BD son fiables, pero tienen tres puntos débiles que conviene revisar antes de asumir que el resultado está bien.

El rango de criterios no tiene los mismos títulos que los datos

Si en E1 escribes zona con minúscula y en los datos la cabecera es Zona con mayúscula, la función no encuentra coincidencia y devuelve 0 sin avisar. Esto pasa porque la función busca una columna llamada igual, y al no encontrarla interpreta que no hay filas que cumplan.

E1fx**zona**
A B C E F
1 Zona Producto Importe zona
2 Norte Mesa 120,00 Norte
Ventas
Comprueba: con BDSUMA(A1:C9;"Importe";E1:E2), el resultado es 0. Copia la cabecera de A1 y pégala en E1 para que ambas digan Zona, y el resultado vuelve a 520,00.

Hay filas vacías dentro de los datos y la cuenta no cuadra

Si borras por descuido una fila de datos pero el rango que le has pasado a la función no incluye esa fila, las cuentas no cambian. Pero si la fila que borraste estaba dentro del rango, los datos se desplazan y la cuenta baja. El error típico es dejar una fila vacía en medio de los datos y no darse cuenta.

A5fx
A B C E F
1 Zona Producto Importe Zona Importe
2 Norte Mesa 120,00 Norte
3 Norte Silla 45,00
4 Sur Mesa 200,00
5
6 Norte Armario 280,00
7 Este Silla 60,00
8 Oeste Mesa 150,00
9 Norte Silla 75,00
Ventas
Cuidado: la fila 5 vacía no es un error en sí, pero si la fórmula esperaba datos ahí y ahora no los encuentra, el resultado baja. Repasa el rango de la función: si añadiste filas nuevas, amplía el rango a A1:C10 y vuelve a probar.

BDEXTRAER devuelve #¡NUM! porque hay más de un resultado

BDEXTRAER solo funciona cuando el criterio aísla una sola fila. Si hay dos o más, la fórmula devuelve #¡NUM! porque no sabe cuál sacar. Esto es por diseño, no un fallo.

E2fxNorte
A B C E
1 Zona Producto Importe Zona
2 Norte Mesa 120,00 Norte
Ventas
Comprueba: =BDEXTRAER(A1:C9;"Importe";E1:E2) con Zona = Norte da #¡NUM! porque hay cuatro filas. Cambia el criterio a uno que aísle una sola fila (por ejemplo Producto = Armario con Zona = Sur, que solo aparece una vez) o usa BDSUMA si lo que quieres es el total.

Cuándo tiene sentido cambiar a tablas, filtros avanzados o Power Query

Las funciones de base de datos llevan en Excel desde la versión 2003 y siguen funcionando igual en Microsoft 365, en Excel para la web, en Mac y en móviles. Son la herramienta adecuada cuando los datos caben en una hoja, los filtros cambian poco y tú mismo escribes las fórmulas a mano.

Cuando la lista crece, los datos cambian cada día o quieres unir esta hoja con otra (por ejemplo, ventas con catálogo de productos), conviene dar el salto a una Tabla de Excel (con Ctrl+T la conviertes en tabla y los filtros pasan a ser automáticos), a un Filtro avanzado en Datos > Ordenar y filtrar > Avanzadas para sacar el resultado a otro sitio, o a Power Query en Datos > Obtener y transformar datos > Obtener datos para automatizar la limpieza y la unión de tablas.

Herramienta Mejor para Dónde se activa
Funciones BD Hojas pequeñas, filtros estables, cálculo en una celda Se escriben a mano en cualquier celda
Tabla de Excel Listas medianas que crecen; filtros con un clic Insertar > Tablas > Tabla o Ctrl+T
Filtro avanzado Extraer las filas filtradas a otro rango Datos > Ordenar y filtrar > Avanzadas
Power Query Combinar archivos, limpiar y automatizar Datos > Obtener y transformar datos > Obtener datos

Lo que ya sabes hacer con las funciones de base de datos

  • Montar la zona de criterios a la derecha de los datos, con los mismos títulos que la fila 1.
  • Escribir BDSUMA, BDCONTAR, BDCONTARA y BDPROMEDIO con sus tres argumentos separados por punto y coma.
  • Sacar el mayor y el menor con BDMAX y BDMIN, y un valor único con BDEXTRAER.
  • Combinar varios criterios en la misma fila (Y) o apilarlos en filas distintas (O).
  • Usar comparaciones (>, <, >=, <=, <>) y comodines (*, ?) en los criterios.
  • Leer los tres errores más comunes: título de criterio mal escrito, fila vacía dentro del rango y BDEXTRAER con más de un resultado.

El siguiente paso natural es convertir la hoja Ventas en una Tabla de Excel con Ctrl+T: al añadir pedidos nuevos, la tabla los recoge sola y, si las fórmulas BDSUMA apuntan a la tabla, los rangos se ajustan automáticamente sin que tengas que editarlos.

Dudas al usar las funciones de base de datos en Excel

¿Las funciones BD están en mi versión de Excel?

Sí. BDSUMA, BDCONTAR, BDCONTARA, BDPROMEDIO, BDMAX, BDMIN, BDPRODUCTO y BDEXTRAER están en Excel desde la versión 2003 y siguen en Microsoft 365, en Excel para la web, en Mac y en la app de móviles.

¿Por qué BDSUMA me devuelve 0 si la zona está bien escrita?

Lo más habitual es que el título de la celda de criterio no coincida con el de la fila 1. Revisa mayúsculas, acentos y espacios. Si tu criterio es Zona arriba, en E1 también tiene que decir Zona exactamente igual.

¿Puedo usar la misma zona de criterios para varias funciones a la vez?

Sí, esa es la ventaja principal. Escribe BDSUMA, BDCONTAR y BDPROMEDIO en tres celdas, todas apuntando a E1:E2, y cuando cambies Norte por Sur las tres se recalculan a la vez.

¿Y si tengo más de una condición con un O entre ellas?

Apila los criterios en filas distintas dejando una fila en blanco entre medias. La fila en blanco es la que le dice a Excel que esos dos bloques son alternativas (O) y no condiciones que se tengan que cumplir a la vez (Y).

¿Cuándo es mejor usar SUMAR.SI.CONJUNTO que BDSUMA?

SUMAR.SI.CONJUNTO es más cómoda cuando la condición va a ir dentro de la propia fórmula y no se reutiliza. BDSUMA gana cuando tienes varios cálculos (suma, cuenta, promedio) que comparten el mismo filtro, porque solo cambias la zona de criterios.

Dudas al usar las funciones de base de datos en Excel

1. ¿Qué tipos de bases de datos existen y en qué se diferencian?

Las más conocidas son las relacionales, como MySQL, PostgreSQL o Access, que guardan la información en tablas con filas y columnas y se consultan con SQL. También están las NoSQL (MongoDB, Firebase), pensadas para datos menos estructurados como documentos o pares clave-valor, y las de tipo hoja de cálculo, como un libro de Excel, ideales para volúmenes pequeños. La diferencia práctica está en cómo se organizan los datos y en el lenguaje o la herramienta que usas para extraerlos.

2. ¿Qué es una base de datos y puedes dar un ejemplo sencillo?

Una base de datos es un conjunto de información organizada para buscarla, ordenarla y relacionarla sin tener que repasarla a mano. Un ejemplo claro es una hoja de Excel con una lista de clientes en la que cada fila es un cliente y cada columna guarda un dato (nombre, ciudad, fecha de alta, importe gastado). Con funciones como BUSCARV (VLOOKUP) o las funciones de base de datos —BDCONTAR, BDSUMA, BDMAX— puedes cruzar esa tabla y sacar totales o filtros al instante.

3. ¿Qué es MySQL y para qué se usa?

MySQL es un sistema gestor de bases de datos relacional gratuito y de código abierto, muy usado en páginas web, aplicaciones y entornos empresariales. Guarda la información en tablas que se relacionan entre sí y se manipulan con el lenguaje SQL (SELECT, INSERT, UPDATE, DELETE). Para sacar datos desde Excel puedes conectar el libro a MySQL con Power Query o un conector ODBC y trabajar directamente con la consulta.

Fuentes

  1. MicrosoftBASE — documentación oficialconsultado el 07/10/2026
  2. MicrosoftExcel y Access — documentación oficialconsultado el 07/10/2026
  3. MicrosoftPower Query (Obtener y transformar datos) — documentación oficialconsultado el 07/10/2026
  4. MicrosoftIMPORTARDATOSDINAMICOS — documentación oficialconsultado el 07/10/2026
  5. MicrosoftSUBTOTALES — documentación oficialconsultado el 07/10/2026