Como continuación a una entrada anterior, en la que un lector planteba esta cuestión:
Lo resolveré esta vez empleando funciones para Base de datos, y en concreto las funciones:
BDMIN(base de datos; campo; rango de criterios)
BDMAX(base de datos; campo; rango de criterios)
Aplicaremos estas fórmulas sobre nuestro listado:
Aprovecharemos de nuestro ejemplo anterior que teníamos una celda validada en E3, para definirlos como 'Rango de criterios' en nuestras funciones de Base de datos.
Interpretaré las funciones dadas.
Para obtener el mínimo valor:
=BDMIN($A$1:$B$11;"Hora";$E$2:$E$3)
preguntamos a Excel de la Base de datos definida por el Rango $A$1:$B$11, cuál es el valor mínimo del campo 'Hora', para aquellos registros que cumplan los criterios dados en el rango $E$2:$E$3, i.e., aquellos registros en los que para el campo 'Agente' tengamos elementos igual al valor de E3.
De igual forma, para el valor máximo:
=BDMAX($A$1:$B$11;"Hora";$E$2:$E$3)
de nuestra Base de datos obtendremos el valor máximo para los registros en los que coincida el elemento del campo 'Agente' ccon el valor de E3.
Es importante que recordemos cómo teníamos que configurar o determinar los criterios en este tipo de funciones para base de datos.
...tengo en A1 a A10 rangos con fecha y hora de las llamadas hechas y en B1 a B10 el nombre del agente; y lo que debo de hacer es obtener el mínimo y el máximo registro de cada agente. ... |
Lo resolveré esta vez empleando funciones para Base de datos, y en concreto las funciones:
BDMIN(base de datos; campo; rango de criterios)
BDMAX(base de datos; campo; rango de criterios)
Aplicaremos estas fórmulas sobre nuestro listado:
Aprovecharemos de nuestro ejemplo anterior que teníamos una celda validada en E3, para definirlos como 'Rango de criterios' en nuestras funciones de Base de datos.
Interpretaré las funciones dadas.
Para obtener el mínimo valor:
=BDMIN($A$1:$B$11;"Hora";$E$2:$E$3)
preguntamos a Excel de la Base de datos definida por el Rango $A$1:$B$11, cuál es el valor mínimo del campo 'Hora', para aquellos registros que cumplan los criterios dados en el rango $E$2:$E$3, i.e., aquellos registros en los que para el campo 'Agente' tengamos elementos igual al valor de E3.
De igual forma, para el valor máximo:
=BDMAX($A$1:$B$11;"Hora";$E$2:$E$3)
de nuestra Base de datos obtendremos el valor máximo para los registros en los que coincida el elemento del campo 'Agente' ccon el valor de E3.
Es importante que recordemos cómo teníamos que configurar o determinar los criterios en este tipo de funciones para base de datos.
Excelente y claro ejemplo de como usar DBMIN y DBMAX...
ResponderEliminar10 mil puntos bro.
hola, ¿cómo podríamos identificar los 3 primeros, no sólo el máximo? ejemplo... tabla con tiempos de una carrera pero cada corredor es de una categoría, los tres primeros veteranos, cadetes... etc. etc. sin utilizar tablas dinámicas.
ResponderEliminarsaludos,
Hola,
ResponderEliminarpuedes ver una solución en
http://excelforo.blogspot.com/2011/03/obtener-los-tres-mejores-tiempos-segun.html
la clave es emplear correctamente la función K.ESIMO.MAYOR.
Espero te sirva.
Slds
gracias! brillante!
ResponderEliminarme ha servido muchíiiiiiiisimo!!!
saludos,
=MIN(SI((B2:B11=D2)+(B2:B11=D2)+(B2:B11=D2)+(B2:B11=D2),A2:A11))
ResponderEliminar=MAX(SI((B2:B11=D2)+(B2:B11=D2)+(B2:B11=D2)+(B2:B11=D2),A2:A11))
D2=lista con nombres(aaaaa,bbbbb,ccccc,ddddd)
Aqui te presento otra variante
=MIN(SI(B2:B11=E3,A2:A11))....matricial
ResponderEliminar=MIN(SI(B2:B11=E3,A2:A11))....matricial
E3=lista con nombres....validacion
Me disculpo de antemano por la anterior publicacion hubo errores
Muchas gracias por el aporte... siempre son bienvenidos
ResponderEliminarlo probaré.
Slds
Que pasa si mis base de datos, donde debe obtener el maximo valor son fechas, no me funcio, me pueden apoyar
ResponderEliminarHola que tal, un gusto saludarte también.
Eliminardebería fncionarte de igual forma que el ejemplo expuesto, ya que al igal que las horas ls fechas sonnúmeros, y aplican las mismas norms de MAX o MIN que con cualquier otro valor.
Revisa que estás aplicando correctamente los argumentos de las funciones.
También puedes intentar el formato matricial expuesto en un comentario más arriba de este.
Slds cordiales
hola ; como haría si tuviese varios nombre de campo? por decir quiero sacar el valor máximo de ventas de un vendedor especifico; la tabla tiene un campo para el vendedor y el resto de campos son los meses; yo quiero el valor del mes que mas vendió; me podrían ayudar
ResponderEliminarHola Bryan,
Eliminarsi únicamente quieres obtener el valor máximo de ventas (entre los diferentes campos de meses), solo aplica la función MAX.
Por ejemplo, en A2 el nombre del vendedor y en B2:M2 los doce meses, por tanto en N2 puedes añadir:
=MAX(B2:M2)
con lo que obtendrías el valor del mes que más vendió.
Espero te sirva.
Slds
hola alguien podría ayudarme con esto:
ResponderEliminarTengo una serie de datos de la siguiente manera
V0010001
V0010003
V0010005
V0010002
V0010004
Los primero 4 carcateres de cada uno de los numeros alfanumericos corresponden a una clave con la que identifico de donde provienen el dato y los ultimos 4 caracteres corresponden a un numero consecutivo.
Lo que necesito es encontrar el MAXIMO de este numero consecutivo dentro de mi serie de datos. que en este ejemplo seria el 0005
Hola Laura,
Eliminaruna forma sería aplicar la siguiente función matricial
=MAX(VALOR(DERECHA(A1:A20;4)))
recuerda valida presionando Ctrl+Mayusc+Enter, en vez de solo Enter
Saludos
Necesito ayuda para construir el criterio, ya que tengo fija la columna A1 con el nombre del campo, pero de a2 a a7 tengo los valores que quiero consultar. De manera que en A1 "Fecha_Recepción" en
ResponderEliminarA2 Facturas_Alfa,
A3 Facturas_Beta, ...
En una base de datos tengo facturas_alfa con varias fechas de recepción, lo mismo para facturas_beta y así. Quiero consultar la máxima fecha de recepción de la columna Facturas_alfa y en renglón siguiente Facturas_beta, pero se complica el criterio en A3.
=bd(base,campo,a1:a3)
Hola, que tal estás?.. un placer saludarte igualmente.
EliminarPodrías probar aplicando la función MAX sobre el rango de celdas de Fras_Alfa, _Beta, etc... quizá sea suficiente con eso.
Saludos cordiales
Tengo 2 bases de datos, en la segunda quiero jalar el cósto más elevado de la primera, como le hago para con una formula tener el costo máximo de todos los criterios?
ResponderEliminarX Y x
ResponderEliminara 1 a Max ?
b 2 b Max ?
c 3 c Max ?
a 4
b 5
c 6
a 7
b 8
c 9
a 10
b 11
c 12
a 13
b 14
c 15
a 16
b 17
Hola Carlos,
Eliminaryo utilizaría una matricial:
=MAX(SI($A$1:$A$17=C1;$B$1:$B$17))
siendo A1:A17 donde aparecen las letras, B1:B17 los valores, y C1 la letra cuyo máximo quieres obtener.
recuerda validarla presionando Ctrl+mayusc+Enter
Saludos
Hola! Tengo en una hoja legajos y en otra hoja legajos fechas y códigos. En la hoja 1 necesito una fórmula con condiciones:
ResponderEliminarque si en la hoja dos se repite un legajo de la hoja 1 y tiene más de un código igual traiga la fecha más antigua de las filas que se corresponden con el legajo y código. Ejemplo: si en la hoja 2 columna A fila 2 y en la col A fila 3 esta el legajo 50, en la col B fila 2 esta la fecha 01/11/2015 y en la col B fila 3 la fecha 01/09/2015, en la col C fila 2 esta el código T1 y en la col C fila 3 se repite el código T1 que la formula que hago en la hoja 1 devuelva la fecha 01/09/2015
Hola,
Eliminaremplea la misma matricial comentado a Carlos Medina (justo el comentario anterior).. solo que trabajando entre hojas.
Saludos
Hola! No me da, el tema es q tengo una condición que coincidan los legajos, otra que busque el codigo en la fila donde esta el legajo, si hay más de un legajo con el mismo código que busque la fecha más antigua de las filas esas.
ResponderEliminar10 01/01/2015 T8
50 03/01/2015 G9
50 05/01/2015 G9
En este caso necesito una fórmula que busque el legajo 50 en toda la columna "A" y devuelva la fecha más antigua de un código y si se repite el legajo con ese código que traiga la fecha más antigua, en el ejemplo sería 03/01/2015 perdón pero hace mucho que intentó y no encuentro la formula indicada.
Ah me olvidaba! Si cambia algún dató la fecha de cambiar también.
ResponderEliminarHola,
Eliminartal como te indicaba la estructura de la fórmula es la misma del comentario de Carlos Medina
supongamos el valor 50 en la celda E2 y en F2 insertamos:
=MIN(SI($A$1:$A$3=E2;$B$1:$B$3))
y validamos presionando Ctrl+Mayusc+Enter
Saludos
Hola, quería saber si hay alguna forma de calcular el minimo condicionado a más de una restricción, para este caso igual a un valor específicio y a la vez distinto de cero. muchas gracias!
ResponderEliminarHola,
Eliminarpodrías aplicar el método matricial expuesto en el comentario anterior, pero añadiendo tantas condiciones como quisieras, por ejemplo:
=MIN(SI($A$1:$A$3=E2;SI($A$1:$A$3<>0;$B$1:$B$3)))
y validamos presionando Ctrl+Mayusc+Enter
Saludos
Hola! uso la formula =MIN(IF(Sheet2!A:A=Sheet1!A,IF(Sheet2!K:K=Sheet1!Q1,Sheet2!E:E)))
ResponderEliminary me da cero... y en realidad necesito que valide todos los datos y traiga la fecha más antigua de las filas adonde se encuentren los datos validados..
Hola,
Eliminarentiendo has incluido
=MIN(IF(Sheet2!A:A=Sheet1!A1,IF(Sheet2!K:K=Sheet1!Q1,Sheet2!E:E)))
y has validado matricialmente como indicaba.. y a pesar de eso devuelve cero..
¿Tienes celdas vacías en esos rangos??
Saludos
Hola! No, no están vacías, pero hay columnas entre medio de las columnas que uso para la formula, será eso? el Tema es que no puedo quitarlas o reorganizarlas ya que es info que se necesita..habrá otra solución ?
ResponderEliminarHola,
Eliminarpuedes enviarme el fichero a
excelforo@gmail.com
Saludos
Hola! Tengo en una hoja un listado de ventas, discriminado por fechas y productos, y en otra un tablero de control que me pide hallar la cantidad máxima vendida de un producto entre determinadas fechas (seleccionando el producto de una lista desplegable e ingresando las fechas de forma manual). Mi problema es que tengo ya fijado cuales deben ser las celdas en las que se incluyen los criterios, tengo 3 celdas con los "nombres" de dichos criterios, y a su derecha la celda para ingresar el valor de cada una, no debajo como se supone que debe ser, por lo que al aplicar la función BDMAX me da error. ¿Cómo puedo solucionarlo?
ResponderEliminarHola Karina,
Eliminarquizá lo más directo en este caso sea usar una función matricial con las condiciones necesarias, que serían la del nombre del producto, y las dos del rango de fechas.
En la celda donde necesites ese valor máximo condicionado:
=MAX((rango_pdtos=Pdto)*(rango_fechas>=FIni)*(rango_fechas<=FFin)*rango_cantidades)
recuerda validarla presionando Ctrl+Mayusc+Enter
Saludos
Hola buen día, tengo la Siguiente situación que me esta volviendo loco:
ResponderEliminarA B C D E F G
1 2 3 4 5 6 7
1 2005 2006 2007
2 Cve. Valor Lugar Valor Lugar Valor Lugar
3 00 66.52 68.59 67.41
4 01 66.47 20 78.41 30 71.96 27
5 02 66.14 19 62.37 9 67.54 21
6 03 56.58 5 57.81 5 54.34 5
Y tengo una sección de Salida, donde se busca que escojan el año, y de ai entrege:
Año: (lista desplegable)
Value= si(Año=2005,2,Si(año=2006,4, Si(año=2007,6,””)))
Rank= si(Año=2005,3,Si(año=2006,5, Si(año=2007,7,””)))
Valor de Cve. 02 : =Buscarv(“02”,A3:G6,Value,0)
Lugar de Cve. 02: =Buscarv(“02”,A3:G6,Rank,0)
Valor de Cve. 00: =Buscarv(“00”,A3:G6,Value,0)
Cve. De Mejor lugar: ¿?
Valor de Mejor lugar:¿?
Mi problema está en cómo hacer que me traiga la clave con el mejor lugar respecto al Año que pido, asi como su valor.
¿Alguna sugerencia?
Hola,
Eliminardepende de la versión que tengas podrías emplear una función condicional u otra...
Un caso te serviría siempre será una matricial..
En tu caso me es complicado interpretar tu explicación, pero podría ser algo así:
=MAX(SI(años=Año_elegido;rango_a_verificar))
(ejecutada matricialmente),
así obtendrías el mayor valor asociado a un año..
Espero te oriente
Slds
Utilizo 2013, si creo que me podría ser útil de tambien de esa manera, si tuviera solo fechas anuales, ayer después de escribir aquí (bueno unas cuantas horas de mas), opte por agregar aparte un tabulado con:
ResponderEliminarD3=MAX(Hist21[2005I])
=INDICE(Hist21[Estado],COINCIDIR(D3,Hist21[2005I],FALSO),1)
y de ello traer la información a la tabla resumen, mi dilema principal esta en convertir los trimestres y semestres en fecha, para que en conjunto con los datos anuales tengan una "base" fecha de la cual buscar el valor mas cercano a la fecha que esté buscando el usuario.
si tienes algo de tiempo me gustaría que vieras el archivo para que pudieras asesorarme.
Si quieres puedes enviarme el fichero a
Eliminarexcelforo@gmail.com
Cuando tenga algo de tiempo lo podría revisar.
Slds
tengo una planilla de las cuales tengo que obtener la fecha del ultimo anticipo, estoy media trabada.
ResponderEliminarHoja 1 - Totales tengo
Legajo -LOB- Nombre - Saldo real -Tickets Pendientes - Saldo - Ultimo anticipo
HOJA 2 CARGA DE DATOS
N° de Legajo - Nombre Empleado - Tipo de comprobante - N° importe - Fecha
de lo que se carga en la hoja 2 me sale un resumen en la hoja 1 , pero no logro dilucidar que formula correcta debo ingresar para que me traiga la fecha del ultimo anticipo
Hola Sara,
Eliminarqué tal estás?, un placer saludarte igualmente
Quizá este post te pueda orientar
http://excelforo.blogspot.com.es/2011/10/encontrar-fechas-con-matriciales.html
Saludos cordiales
Hola!
ResponderEliminarTengo una hoja con muchas condiciones, entre ellas rangos, por ejemplo, salario>1500 salario<2500, estoy intentando usar funciones BD para calcular los máximos y mínimos y así evitar meter las condiciones a mano (usando max(si( matricial), pero veo que al usar BDMAX y seleccionar los criterios no los une en 1500<salario<2500 si no que elige todos los datos menores a 2500 (incluyendo los menores de 1500) y mayores de 1500 (incluyendo los mayores de 2500), ¿hay alguna sintaxis que en mi tabla de criterios me permita indicar que es un rango y por tanto se deben cumplir las dos condiciones? Muchas gracias! Saludos
Hola Lucia,
Eliminartienes que construir en el rango de criterios dos columnas de salario, en la primera añadir la condición >1500 y en la segunda Y EN LA MISMA FILA <2500
Espero haberme explicado
Saludos
Si!! Muchas gracias, funcionó perfecto.
ResponderEliminarHola, que interesante el blog, tengo la siguiente situación y no logro sacar la solución.
ResponderEliminarCOMPAÑIA - CODIGO
A 1
B 1
A 2
C 1
B 3
La idea es que el código sea único y correlativo para cada compañía; necesito obtener el ultimo de cada compañía para generar el codigo siguiente que debiera ser el ultimo + 1, me pueden ayudar?
Muchas gracias, saludos.
Hola Johanna,
Eliminaren la columna B del código, en la primera fila de datos (fila 2) después del encabezado escribe:
=CONTAR.SI($A$2:A2;$A2)
y arrastra hacía abajo... la siguiente vez que añadas una compañía se autonumerará..
Saludos