🚀The world's best VBA AI has evolved. ExcelMaster is now an autonomous Agent.Read more →
Back to Blog

Funciones de base de datos en Excel — DAVERAGE, DMAX, DMIN y el dominio del rango de criterios

|

Funciones de base de datos en Excel — DAVERAGE, DMAX, DMIN y el dominio del rango de criterios

Resumen — Las funciones de base de datos de Excel comparten una firmaDxxx(database, field, criteria)— y una destreza: el rango de criterios. Cambia la agregación y cambias de función: DAVERAGE para la media de las filas coincidentes, DMAX/DMIN para el mayor/menor, DPRODUCT, DSTDEV, DVAR para el resto. Domina el bloque de criterios una vez y las doce caen juntas. Las reglas que importan: Y es a lo ancho de una fila, O es hacia abajo por las filas; un rango sobre un campo (100-500) necesita ese encabezado dos veces; los criterios de fórmula necesitan un encabezado en blanco o distinto del de los datos; y el texto coincide desde el principio por defecto (North también atrapa Northwest). Acierta con el bloque de criterios y las funciones D se convierten en la forma más auditable de plantear una pregunta compleja de varias condiciones. Funciona en todas las versiones de Excel.

=DAVERAGE(A1:E200, "Amount", H1:I2)   ' Amount medio de las filas coincidentes
=DMAX(A1:E200, "Amount", H1:H2)       ' el mayor Amount coincidente
=DMIN(A1:E200, "Amount", H1:H2)       ' el menor Amount coincidente

Por separado, DSUM y DGET parecen rarezas sueltas. Vistas juntas, las funciones de base de datos son una familia construida sobre una sola idea —escribes tu consulta como una tabla en la hoja— y esa idea tiene una profundidad que la mayoría de los tutoriales nunca alcanza. Esta guía es la clase magistral del rango de criterios: acierta con este único bloque y toda función D, de DAVERAGE a DVAR, funciona igual.

Nota: en una interfaz de Excel en español, estas funciones aparecen con el prefijo BD: DSUM = BDSUMA, DCOUNT = BDCONTAR, DCOUNTA = BDCONTARA, DGET = BDEXTRAER, DAVERAGE = BDPROMEDIO, DMAX = BDMAX, DMIN = BDMIN, DPRODUCT = BDPRODUCTO, DSTDEV = BDDESVEST, DVAR = BDVAR. Relacionadas: SUMIFS = SUMAR.SI.CONJUNTO, AVERAGEIFS = PROMEDIO.SI.CONJUNTO, COUNTIFS = CONTAR.SI.CONJUNTO, FILTER = FILTRAR, AVERAGE = PROMEDIO. Las fórmulas de abajo usan los nombres en inglés; el comportamiento es idéntico.

Lo que aprenderás

  • La familia completa: una firma, doce agregaciones
  • Y frente a O en un bloque de criterios: la regla que lo gobierna todo
  • Por qué un rango sobre un campo (≥100 y ≤500) necesita el encabezado dos veces
  • Los criterios de fórmula: la función más potente, y sus dos reglas estrictas
  • La trampa del texto que coincide por «empieza por» y cuenta de más en silencio
  • El árbol de decisión: funciones D frente a SUMIFS/AVERAGEIFS frente a FILTER

Una firma, doce agregaciones

Toda función de base de datos lee los mismos tres argumentos —una tabla (con encabezados), un campo y un rango de criterios— y solo se diferencia en cómo agrega las filas coincidentes.

Función Devuelve, para las filas coincidentes…
DSUM el total del campo
DAVERAGE la media (ignora blancos y texto)
DCOUNT / DCOUNTA recuento de números / de celdas no en blanco
DMAX / DMIN el valor mayor / menor
DGET el valor único (da error si no es exactamente uno)
DPRODUCT el producto de los valores
DSTDEV / DSTDEVP desviación estándar muestral / poblacional
DVAR / DVARP varianza muestral / poblacional

DAVERAGE es la honrada que conviene recordar: promedia solo las celdas numéricas de las filas coincidentes, así que los blancos no arrastran la media hacia cero como sí puede pasar con un SUM/COUNT hecho a mano. Aprende el rango de criterios de más abajo y podrás manejar cualquier fila de esta tabla.

Y a lo ancho, O hacia abajo: la regla detrás de todo

El rango de criterios es una pequeña tabla: una fila de encabezados y luego filas de condiciones. La geometría es la lógica.

' Y — misma fila: región West Y Amount mayor que 1000
'   H1: Region    I1: Amount
'   H2: West      I2: >1000
=DAVERAGE(A1:E200, "Amount", H1:I2)

' O — filas separadas: West O East
'   H1: Region
'   H2: West
'   H3: East
=DAVERAGE(A1:E200, "Amount", H1:H3)

' Y + O juntas: (West Y >1000) O (East Y >2000)
'   H1: Region    I1: Amount
'   H2: West      I2: >1000
'   H3: East      I3: >2000
=DAVERAGE(A1:E200, "Amount", H1:I3)

Ese último bloque es donde las funciones D se ganan el sueldo: expresar (West y más de 1000) o (East y más de 2000) en SUMIFS significa anidar matrices; aquí son cuatro celdas que un revisor lee en dos segundos. Las filas son O, las columnas son Y: en cuanto eso es memoria muscular, condiciones arbitrariamente complejas no son más que un bloque más grande.

Un rango sobre un solo campo necesita el encabezado dos veces

Esta es la trampa que deja a la gente clavada: acotar una sola columna entre dos valores. El instinto es escribir >=100 y <=500 en una celda. Eso no puede funcionar: una celda contiene una condición. Dos condiciones sobre el mismo campo necesitan que el encabezado aparezca en dos columnas:

' Amount entre 100 y 500 (ambos incluidos):
'   H1: Amount    I1: Amount     <- el MISMO encabezado, dos veces
'   H2: >=100     I2: <=500
=DSUM(A1:E200, "Amount", H1:I2)

Ambas están en una fila, así que se combinan con Y: Amount >= 100 Y Amount <= 500. Repetir un encabezado resulta extraño, pero ese es el mecanismo: cada columna de criterios lleva una comparación, y una prueba de intervalo son dos comparaciones sobre el mismo campo.

Criterios de fórmula: la función potente con dos reglas estrictas

Los criterios no tienen por qué ser constantes. Un criterio puede ser una fórmula que devuelve TRUE/FALSE por fila: «por encima de la media general», «en el cuartil superior», «más largo que su vecino». Es lo más potente que hace la familia D, y falla al instante si rompes cualquiera de sus dos reglas.

' Sumar Amount de las filas POR ENCIMA del Amount medio:
'   H1: (en blanco o una etiqueta que NO sea un encabezado real, p. ej. "AboveAvg")
'   H2: =E2>AVERAGE($E$2:$E$200)
=DSUM(A1:E200, "Amount", H1:H2)
  • Regla 1: el encabezado de criterios debe estar en blanco o ser distinto de todos los encabezados de los datos. Si etiquetas la celda de la fórmula como Amount, Excel la trata como un criterio normal sobre la columna Amount y tu fórmula se rompe. Los criterios de fórmula necesitan un encabezado que no sea uno de los encabezados de la tabla (o que esté vacío).
  • Regla 2: referencia la primera fila de datos con una referencia relativa. Escribe E2 (la primera fila de datos), no E:E ni $E2. Excel recorre la fórmula fila a fila por dentro; una referencia relativa a la primera fila es lo que se lo permite. Mantén absoluto el rango de comparación ($E$2:$E$200) para que AVERAGE vea la columna entera.

Rompe la regla 1 y obtienes una respuesta equivocada sin error; rompe la regla 2 y la prueba se evalúa contra la fila equivocada. Acierta con ambas y tendrás criterios en vivo y calculados que ninguna otra función de agregación condicional ofrece con tanta limpieza.

La trampa del «empieza por» (y los comodines)

Los criterios de texto en las funciones D son de «empieza por», no de «es igual a». Un criterio de North coincide por igual con North, Northwest y Northern: una coincidencia de más silenciosa que infla totales y recuentos.

'   H2: North      coincide con North, Northwest, Northern...  (¡empieza por!)
'   H2: ="=North"  coincide SOLO con "North" exacto
'   H2: Jo*        comodín: Jones, Johnson (cualquier carácter)
'   H2: ?at        comodín: cat, bat, hat (un carácter + "at")

Para forzar una coincidencia exacta, envuélvelo como ="=North". * (cualquier número de caracteres), ? (exactamente uno) y ~ (para escapar un */? literal) funcionan como siempre. Cuando un DSUM o un DCOUNT da un número algo demasiado alto, el valor por defecto de «empieza por» es el primer sospechoso, justo después de una errata en un encabezado que da un número demasiado bajo.

El árbol de decisión: funciones D frente a SUMIFS frente a FILTER

Ahora hay tres herramientas que responden a «agrega las filas que coinciden». Elegir bien:

  • SUMIFS / AVERAGEIFS / COUNTIFS: tu opción por defecto. Condiciones en la fórmula, nada extra en la hoja, fáciles de copiar hacia abajo por una columna, rápidas a gran escala. Mejores cuando las condiciones son lógica Y sencilla y no cambian a menudo.
  • Funciones de base de datos: cuando la pregunta deba vivir en la hoja: ramas O complejas, criterios basados en fórmulas, un bloque de criterios que editarán tus colegas o un rastro de auditoría donde una consulta visible le gana a una fórmula anidada. Prolijas, pero de una legibilidad única y las únicas con la garantía de unicidad de DGET.
  • FILTER + agregación: cuando quieres las propias filas coincidentes, no solo un número, o cuando la lógica es más natural como una matriz booleana: =SUM(FILTER(Amount, (Region="West")*(Amount>1000))). La vía moderna de matrices dinámicas, y a menudo la más flexible, pero requiere Excel 365.

El resumen honesto: las funciones D son heredadas pero no obsoletas. Para una fórmula repetible arrastrada hacia abajo por una columna, usa SUMIFS. Para extracciones en vivo en 365, usa FILTER. Pero para una pregunta puntual, de varias condiciones y legible por un revisor en cualquier versión de Excel —una pregunta que quieres ver en la hoja—, un bloque de criterios y una función D siguen siendo la herramienta más clara que tiene Excel.

Cómo ayuda ExcelMaster

El rango de criterios es potente y quisquilloso a partes iguales: la regla del encabezado por duplicado para los rangos, la regla del encabezado en blanco para los criterios de fórmula, el valor por defecto de «empieza por». Describe la pregunta en términos llanos —«valor medio de pedido de los pedidos de West o East por encima de la media general»— y ExcelMaster construye el bloque de criterios correctamente: encabezados emparejados con tus datos, Y y O dispuestos en la geometría adecuada, criterios de fórmula con la referencia relativa a la primera fila y el =DAVERAGE(...) apuntando a ella. También lee una función D existente y te dice por qué el número parece raro: una errata en un encabezado, una fila en blanco perdida o una coincidencia de más por «empieza por».

Preguntas frecuentes

¿Qué son las funciones de base de datos en Excel?

Son una familia de doce funciones —DSUM, DAVERAGE, DCOUNT, DCOUNTA, DGET, DMAX, DMIN, DPRODUCT, DSTDEV, DSTDEVP, DVAR, DVARP— que agregan las filas de una tabla que coinciden con un rango de criterios. Todas comparten la firma Dxxx(database, field, criteria); solo se diferencian en la agregación. El rango de criterios —un bloque de encabezados y condiciones en la hoja— es el concepto que las unifica.

¿Cómo creo un rango de criterios con Y y O?

Las condiciones de una misma fila se unen con Y; las condiciones de filas separadas se unen con O. La fila superior del bloque contiene encabezados copiados exactamente de tus datos; las filas de debajo contienen condiciones como West, >1000 o >=100. Dimensiona el argumento de criterios para abarcar cada celda de encabezado y de condición que uses.

¿Cómo filtro una función de base de datos entre dos números?

Pon el encabezado del campo en dos columnas y una comparación en cada una, en la misma fila: el encabezado Amount en H1 e I1, >=100 en H2 y <=500 en I2. Ambas están en una fila, así que se combinan con Y para dar «entre 100 y 500».

¿Puedo usar una fórmula como criterio?

Sí. Usa una celda de encabezado que esté en blanco o sea distinta de cualquier encabezado real de los datos, y una fórmula que referencie la primera fila de datos de forma relativa; p. ej. =E2>AVERAGE($E$2:$E$200) para coincidir con las filas por encima de la media. Un encabezado en blanco o distinto es lo que le dice a Excel que es un criterio de fórmula y no una coincidencia de etiqueta.

¿Están obsoletas las funciones de base de datos ahora que tenemos SUMIFS y FILTER?

Obsoletas no, pero sí especializadas. Usa SUMIFS/AVERAGEIFS para agregación condicional simple y repetible, y FILTER (Excel 365) para extraer filas coincidentes o construir lógica booleana. Las funciones de base de datos siguen ganando en lógica O compleja, criterios basados en fórmulas, la comprobación de unicidad de DGET y las preguntas que quieres visibles y editables en la hoja, y funcionan en todas las versiones de Excel.

Probado en

Probado en: Excel 365 (Windows 11) — última verificación 2026-07-20.

Guías relacionadas: Excel DSUM y DCOUNT · Excel DGET · Excel SUMIFS · Excel AVERAGEIFS · Excel FILTER