Fórmula de Excel: Obtenga el próximo evento programado -

Tabla de contenido

Fórmula genérica

(=MIN(IF((range>=TODAY()),range)))

Resumen

Para obtener el próximo evento programado de una lista de eventos con fechas, puede usar una fórmula de matriz basada en las funciones MIN y TODAY para encontrar la próxima fecha, e INDICE y MATCH para mostrar el evento en esa fecha. En el ejemplo que se muestra, la fórmula en G6 es:

(=MIN(IF((date>=TODAY()),date)))

Donde "fecha" es el rango con nombre D5: D14.

Nota: esta es una fórmula de matriz y debe ingresarse con Control + Shift + Enter.

Explicación

La primera parte de la solución usa las funciones MIN y TODAY para encontrar la "próxima fecha" basada en la fecha de hoy. Esto se hace filtrando las fechas a través de la función SI:

IF((date>=TODAY()),date)

La prueba lógica genera una matriz de valores VERDADERO / FALSO, donde VERDADERO corresponde a fechas mayores o iguales a hoy:

(FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE)

Cuando un resultado es VERDADERO, la fecha se pasa a la matriz devuelta por IF. Cuando un resultado es FALSO, la fecha se reemplaza por el booleano FALSO. La función SI devuelve la siguiente matriz a MIN:

(FALSE;FALSE;FALSE;43371;43385;43399;43413;43427;43441;43455)

La función MIN luego ignora los valores FALSE y devuelve el valor de fecha más pequeño (43371), que es la fecha del 28 de septiembre de 2018 en el sistema de fechas de Excel.

Obtener el nombre de la película

Para mostrar la película asociada con la "próxima fecha" ", usamos INDICE y COINCIDIR:

=INDEX(movie,MATCH(G6,date,0))

Dentro de INDEX, MATCH encuentra la posición de la fecha en G6 en la lista de fechas. Esta posición, 4 en el ejemplo, se devuelve al ÍNDICE como un número de fila:

=INDEX(movie,4)

e INDEX devuelve la película en esa posición, "The Dark Knight".

Todo en una fórmula

Para devolver la siguiente película en una sola fórmula, puede usar esta fórmula de matriz:

(=INDEX(movie,MATCH(MIN(IF((date>=TODAY()),date)),date,0)))

Con MINIFS

Si tiene una versión más reciente de Excel, puede usar la función MINIFS en lugar de la fórmula de matriz en G6:

=MINIFS(date,date,">="&TODAY())

MINIFS se introdujo en Excel 2016 a través de Office 365.

Manejo de errores

La fórmula de esta página funcionará incluso cuando los eventos no estén ordenados por fecha. Sin embargo, si no hay fechas próximas, la función MIN devolverá cero en lugar de un error. Esto se mostrará como la fecha "0-Ene-00" en G6, y la fórmula INDICE y COINCIDIR arrojará un error # N / A, ya que no hay una fila cero para obtener un valor. Para atrapar este error, puede reemplazar MIN con la función PEQUEÑA, luego envolver toda la fórmula en IFERROR así:

=(IFERROR(SMALL(IF((date>=TODAY()),date),1),"None found"))

A diferencia de MIN, la función PEQUEÑO arrojará un error cuando no se encuentre un valor, por lo que IFERROR se puede usar para administrar el error.

Articulos interesantes...