Contar fechas: días entre fechas, años bisiestos y semanas ISO

Actualizado:

Contar fechas parece aritmética sencilla, hasta que a un plazo le falta un día, un pago mensual cae en el día equivocado o Excel se empeña en que existió el 29 de febrero de 1900. El calendario es irregular: los meses tienen cuatro duraciones distintas, algunos años tienen un día más, las semanas no encajan limpiamente en los años y, en muchos países, dos días al año el reloj se salta o repite una hora. Esta guía explica cómo contar días, años bisiestos y números de semana, y cómo escribir una fecha para que nadie la lea mal.

Contar los días entre dos fechas

El número de días entre dos fechas es la posterior menos la anterior. Del 1 al 10 de marzo hay 9 días: cuentas los días que pasan, así que uno de los extremos queda fuera, igual que de lunes a martes hay un día. Si cuentan tanto el primer día como el último —los días de un festival o los días de vacaciones que te tomas—, suma uno y la respuesta es 10. Las dos respuestas son correctas; cuentan cosas distintas, así que decide cuál necesitas antes de empezar.

Los plazos legales siguen las reglas que fija la ley. En la Unión Europea, el Reglamento (CEE, Euratom) n.º 1182/71 establece las reglas que se aplican por defecto a los plazos de los actos del Consejo y de la Comisión: cuando un plazo se cuenta a partir de un hecho, el día en que se produce no se computa, un plazo expresado en días termina al final de su último día y, si ese día es sábado, domingo o festivo, el plazo se prolonga hasta el final del siguiente día hábil. Las leyes nacionales, los contratos y los tribunales pueden contar de otra manera, así que, para un plazo real, comprueba la regla que se le aplica.

Un año tiene 365 días, o 366 si es bisiesto. Del 1 de enero de 2026 al 1 de enero de 2027 hay 365 días; del 1 de enero de 2028 al 1 de enero de 2029 hay 366, porque 2028 es bisiesto.

Tiempo desde una fecha

Un día no siempre dura 24 horas

Donde se cambia la hora por el horario de verano, un día al año dura 23 horas y otro, 25. En la Unión Europea, donde la hora cambia el último domingo de marzo y el último domingo de octubre (consulta la primera parte de esta serie), en 2026 esos días son el 29 de marzo y el 25 de octubre. Así, del 1 de marzo al 1 de abril de 2026 en Lisboa hay 31 días naturales, pero solo 743 horas, no 744.

Por eso multiplicar los días por 24, o dividir las horas entre 24, da resultados erróneos cuando hay un cambio de hora de por medio. La herramienta «Tiempo desde una fecha» cuenta los días en el calendario y las horas como tiempo realmente transcurrido, así que, en el modo «Entre dos fechas» y en un dispositivo configurado con la hora de Lisboa, muestra 31 días y 743 horas para ese periodo. Cuando importa la hora del día, como en una reunión o un vuelo, haz la conversión con la zona horaria, no con un número fijo de horas.

Años bisiestos

Un año bisiesto añade el 29 de febrero para que el calendario no se desfase respecto a las estaciones. La regla del calendario gregoriano, tal como la formula el US Naval Observatory: es bisiesto todo año divisible exactamente por cuatro, salvo los divisibles exactamente por 100, que solo son bisiestos si además son divisibles por 400. Por eso 2000 fue bisiesto, 1900 no lo fue y 2100 no lo será.

En un ciclo de 400 años, eso da 97 días bisiestos, es decir, un año medio de 365,2425 días. El calendario gregoriano se introdujo en 1582, cuando al 4 de octubre le siguió directamente el 15 de octubre, pero los países lo adoptaron en momentos distintos: Gran Bretaña y sus colonias cambiaron en 1752, cuando al 2 de septiembre le siguió el 14 de septiembre. Las fechas anteriores al cambio en cada país pueden estar escritas en el antiguo calendario juliano, así que las fechas históricas hay que contrastarlas con el calendario vigente en su momento.

Excel tiene una excepción famosa. Microsoft indica que Excel trata erróneamente 1900 como año bisiesto, una decisión tomada por compatibilidad con Lotus 1-2-3, y que su función WEEKDAY (DIASEM en la versión en español) devuelve valores erróneos para las fechas anteriores al 1 de marzo de 1900. A partir del 1 de marzo de 1900, no hay ninguna diferencia.

Año¿Bisiesto?Por qué
2024SíDivisible por 4.
2026NoNo es divisible por 4.
2028SíDivisible por 4.
1900NoDivisible por 100, pero no por 400.
2000SíDivisible por 400.
2100NoDivisible por 100, pero no por 400.

Los meses no duran lo mismo

Sumar un mes es más complicado de lo que parece, porque el mismo día no existe en todos los meses. Un mes después del 31 de enero no tiene una respuesta obvia, porque febrero no tiene día 31. Cada sistema lo resuelve a su manera. En JavaScript, al cambiar a febrero una fecha del 31 de enero de 2026, el día se desborda hacia marzo y el resultado es el 3 de marzo de 2026. El reglamento de la UE sobre plazos sigue el criterio contrario: cuando un plazo en meses o años debería terminar un día que no existe en el último mes, termina al final del último día de ese mes —el 28 de febrero en 2026, o el 29 de febrero en un año bisiesto—.

Cuando importa el día del mes, como en un alquiler o una suscripción que vence el día 31, acuerda de antemano qué ocurre en los meses más cortos. Contar en días evita el problema por completo, a costa de que la fecha se desplace de un mes a otro.

Cumpleaños el 29 de febrero

Quien nació el 29 de febrero solo tiene cumpleaños en el calendario los años bisiestos, y todo cálculo de edad tiene que decidir qué ocurre los demás años. La Calculadora de edad toma el 1 de marzo como cumpleaños en los años no bisiestos: la edad aumenta el 1 de marzo, y esa es la fecha que muestra como próximo cumpleaños.

La ley varía de un país a otro, y muchas leyes no dicen nada al respecto. La ley escocesa Age of Legal Capacity (Scotland) Act 1991, por ejemplo, establece que una persona nacida el 29 de febrero alcanza una edad determinada el 1 de marzo. Para una edad legal, como la de un contrato o una pensión, comprueba la regla del país correspondiente.

Calculadora de edad

Números de semana ISO

La norma internacional para numerar las semanas es la ISO 8601: las semanas empiezan el lunes, y la semana 1 es la que contiene el primer jueves del año, que es lo mismo que decir la semana que contiene el 4 de enero. Por eso un año tiene 52 o 53 semanas.

En torno al 1 de enero, el año de numeración de las semanas puede no coincidir con el año natural. El 1 de enero de 2026 es jueves, así que la semana 1 de 2026 va del lunes 29 de diciembre de 2025 al domingo 4 de enero de 2026. 2026 tiene 53 semanas, porque empieza en jueves, y los días del 1 al 3 de enero de 2027 pertenecen a su semana 53. Existen otras convenciones —algunas empiezan la semana en domingo o consideran semana 1 la que contiene el 1 de enero—, así que una misma fecha puede tener números de semana distintos según el software; antes de comparar, comprueba qué sistema usa cada calendario.

FechaDía de la semanaSemana ISO
29 de diciembre de 2025Lunes2026-W01
1 de enero de 2026Jueves2026-W01
31 de diciembre de 2026Jueves2026-W53
1 de enero de 2027Viernes2026-W53
4 de enero de 2027Lunes2027-W01
1 de enero de 2028Sábado2027-W52

Escribir fechas: YYYY-MM-DD

07/10/2026 significa 7 de octubre en el Reino Unido, Francia, Portugal, Brasil y la mayoría de los demás países que ponen primero el día, pero 10 de julio en Estados Unidos. La fecha de calendario ISO 8601 evita la duda poniendo primero la unidad mayor: 2026-10-07, con el año en cuatro cifras y el mes y el día en dos.

Escritas así, las fechas también se ordenan correctamente como texto plano. El RFC 3339, el perfil de ISO 8601 para internet, señala que ordenar los componentes del menos preciso al más preciso permite ordenar las cadenas de fecha como texto, siempre que todas usen el mismo formato. Por eso los nombres de archivo y las exportaciones de hojas de cálculo que empiezan por 2026-10-07 quedan ordenados por fecha por sí solos. La primera parte de esta serie trata la hora del día, los desfases respecto a UTC y las zonas horarias.

Preguntas frecuentes

¿Cuántos días hay entre dos fechas?

Resta la fecha anterior de la posterior: del 1 al 10 de marzo hay 9 días. Si tienes que contar tanto el primer día como el último, suma uno.

¿Por qué 2100 no es bisiesto?

Los años divisibles por 100 solo son bisiestos si además son divisibles por 400. 2000 lo fue, 2100 no lo es, y el siguiente año secular bisiesto después de 2000 es 2400.

¿En qué semana cae el 1 de enero?

Depende del día de la semana. Si cae de lunes a jueves, está en la semana 1 del nuevo año; si cae de viernes a domingo, pertenece a la última semana del año anterior, igual que el 1 de enero de 2027 pertenece a la semana 53 de 2026.

¿Por qué Excel acepta el 29 de febrero de 1900?

Excel trata 1900 como año bisiesto por compatibilidad con Lotus 1-2-3, como documenta Microsoft. 1900 no fue bisiesto; el error solo afecta a las fechas anteriores al 1 de marzo de 1900.

¿Cuándo cumple años alguien nacido el 29 de febrero?

El 29 de febrero, en los años bisiestos. Los demás años es cuestión de convención o de ley: la Calculadora de edad usa el 1 de marzo, como hace la ley escocesa, pero las reglas sobre la edad legal varían de un país a otro.

Anterior en la serie ← Marcas de tiempo Unix y zonas horarias explicadas

Referencias

  1. US Naval Observatory — Leap Years
  2. US Naval Observatory — Introduction to Calendars
  3. Calendar (New Style) Act 1750
  4. Regulation (EEC, Euratom) No 1182/71 determining the rules applicable to periods, dates and time limits (1971)
  5. Directive 2000/84/EC on summer-time arrangements (2001)
  6. Microsoft Learn — Excel incorrectly assumes that the year 1900 is a leap year
  7. Microsoft Learn — DATEPART (Transact-SQL): week and ISO week
  8. MDN Web Docs — Date.prototype.setMonth()
  9. Age of Legal Capacity (Scotland) Act 1991, section 6
  10. WHATWG HTML Standard — Weeks
  11. ISO — ISO 8601 Date and time format
  12. RFC 3339 — Date and Time on the Internet: Timestamps (July 2002)

Guías relacionadas