miércoles, marzo 25, 2015

Calculando el día del año con Excel

Dada una fecha Excel cuenta con funciones para calcular el día del mes, la semana del año, el mes o el año de la fecha. Por ejemplo si queremos saber en qué semana del año cae la fecha 25 de marzo del 2015, usamos la función NUM.DE.SEMANA

Excel no tiene una función para calcular el día del año de una determinada fecha (un valor entre 1 y 365 o 366, si el año es bisiesto). Por ejemplo le 25/03/2015 es el día número 84 del año.
Para calcular el número de día del año de una fecha podemos usar esta fórmula:

=B3-FECHA(AÑO(B3),1,0)
Para calcular cuántos días faltan hasta el fin del año, modificamos la fórmula de esta manera:

=FECHA(AÑO(B3),12,31)-B3

13 comentarios:

  1. Gracias por la entrada.
    También puede resultar interesante usar la función HOY para calcular los días transcurridos y restantes del año a día de hoy:

    Transcurridos: =HOY()-FECHA(AÑO(HOY());1;0)
    Restantes: =FECHA(AÑO(HOY());12;31)-HOY()

    Publique una entrada similar aquí: http://nubededatos.blogspot.com.es/2015/01/calcular-dias-transcurridos-y-restantes.html

    ResponderBorrar
  2. Yo quisiera hacerle una consulta. ¿Cómo se puede hacer el inverso? Me explico:

    Tengo la fracción del año o el número de día ¿cómo puedo calcular el día que es?

    Por ejemplo tengo el año 2013,6 y me gustaría saber a qué día del año corresponde (en este caso es el 7 de Agosto de 2013).

    Un saludo y muchas gracias

    ResponderBorrar
  3. Hola Francisco, si tenemos el año en la celda A1 y el número de día,en la celda A2, por ejemplo 2013 y 180, podemos calcular la fecha con la fórmula

    =FECHA(A1,1,1)+A2

    No logré entender tu ejemplo. En 2013,6, 2013 es el año; ¿qué representa el 6?

    ResponderBorrar
  4. El decimal es la fracción del año en número entero. Por ejemplo 2015,5; sería la mitad del año; 2015,75 correspondería al 1 de Octubre; que es el día que corresponde al 0,75 del año transcurrido o si lo prefiere, cuando se lleva el 75% del año transcurrido.

    Ya lo he solucionado:

    =(FECHANUMERO(CONCATENAR(1;-1;-ENTERO(A1))))+((A1-(ENTERO(A1)))*365,25)
    Y dándole formato de fecha a la casilla donde está la fórmula.

    Así si tengo el año con fracción 2024,35 me devuelve la fecha 7 de mayo del 2024

    Para hacer el inverso y calcular la proporción de año a partir de una fecha dada:

    =(AÑO(ENTERO(A3))+(((A3)-(FECHANUMERO(CONCATENAR(1;-1;-AÑO(ENTERO(A3))))))/365,25))

    Y dando el formato de número con dos decimales.

    Así si escribo la fecha 7 de mayo del 2.024; me devuelve 2024,35

    Muchas gracias

    ResponderBorrar
  5. Ya he visto que puedo usar el ejemplo que ha puesto de Fecha; mejor que la opción concatenar.

    ResponderBorrar
  6. Francisco, ahora está claro. Puedes usar esta fórmula que es mas corta

    =FECHA(IZQUIERDA(A1,4),1,1)+RESTO(A1,1)*365.25

    La inversa te la da esta fórmula

    =AÑO(A3)+(A3-FECHA(AÑO(A3),1,1))/365.25

    también más corta.



    ResponderBorrar
  7. Dependiendo de la versión de tu Excel en lugar de RESTO tendrás que usar RESIDUO. En mis definiciones regionales el separador de argumentos es la coma, no el punto y coma como en el tuyo.

    ResponderBorrar
  8. Muchas gracias por todo

    ResponderBorrar
  9. Buenos Días

    Estimados,

    Existe un error en lo planteado "Calculando el día del año con Excel" ya que sin importar si el año es bisiesto o no la formula no reconoce que el 1 de marzo siempre deberá ser 61... Alguna solución a esto?

    Quedo atento

    ResponderBorrar
  10. Continuando con lo anterior, el día 25/03/2015 en realidad corresponde al día numero 85 y no al 84 como se plantea en el ejercicio...

    Es de aclarar que lo anterior no lo hago para para presumir de mi ni mucho menos para humillar el trabajo de alguien!, solo lo hago como aclaracion; ya que realizando un reporte histórico de horas trabajadas dia a dia me encuentro que para el año 2015 las fechas a partir del 28 de febrero no corresponden al dia del año...
    "Esto lo detecte analizando la estructura de una importación de datos dinámicos".

    Espero por favor su ayuda a lo planteado.

    ResponderBorrar
  11. Estimado Ray, te sugiero hace el siguiente ejercicio:
    en la columna A, a partir de la celda A1 crear la serie de días del año 2015; en la columna B, a partir de la celda B1 crear una serie de razón 1 (1, 2, 3, etc.). Esto te permitirá constatar que el 1 de marzo del 2015 es el día 60. De la misma manera podrás constatar que el 25 de marzo del 2015 es el 84.
    Además hay un problema lógico en tu planteo, si febrero tiene un día más en los años bisiestos, el 1ro. de marzo no puede tener el mismo número de orden todos los años.
    De todas maneras me interesa ver el cuaderno donde descubriste el problema para entender mejor tu planteo.
    Sin él, no veo como entenderlo.

    ResponderBorrar

Nota: sólo los miembros de este blog pueden publicar comentarios.