[Excel] Cómo extraer componentes de fecha y hora para principiantes

Excel

Introducción

Esta guía práctica explica cómo extraer componentes de fecha y hora en Excel con las funciones YEAR, MONTH, DAY, WEEKDAY, HOUR, MINUTE y SECOND. No solo verás la sintaxis, sino también casos reales, errores comunes y combinaciones útiles para informes.

Idea clave: en Excel una fecha es un número de serie (por ejemplo, 1 = 01/01/1900 en el sistema 1900) y una hora es la fracción de un día (0.5 = 12:00). Esto permite operar con fechas/horas como si fuesen números.

Notas rápidas antes de empezar

  • Formato regional: evita ambigüedades usando AAAA-MM-DD (ISO) o celdas con fecha real; los textos como "10/02/2022" pueden depender de la configuración regional.
  • 1900/1904: Excel (Windows) usa el sistema 1900; Mac puede usar 1904. Si importas archivos entre sistemas, revisa la base de fechas.
  • Texto vs. fecha: si una fecha viene como texto, usa DATEVALUE / TIMEVALUE o transforma con TEXTSPLIT + DATE.

Funciones de Fecha en Excel

Estas funciones extraen partes de una fecha para clasificar, agrupar o calcular periodos.

FunciónDevuelveEjemploResultado
YEAR(fecha)Año (número)YEAR("2023-12-25")2023
MONTH(fecha)Mes 1–12MONTH("2022-08-15")8
DAY(fecha)Día del mesDAY("2019-05-22")22
WEEKDAY(fecha,[tipo])Número de día de semanaWEEKDAY("2021-09-12",2)7

Uso analítico: agrupa ventas por año/mes, crea columnas auxiliares para tablas dinámicas o genera claves como =YEAR(A2)&"-"&TEXT(A2,"00") junto a MONTH.


Función YEAR

YEAR(fecha) extrae el año de una fecha. Ideal para agregaciones anuales o cierre fiscal.

Ejemplos:

  • Si A1=2023-12-25, entonces =YEAR(A1)2023.
  • Edad a 31/03 del año actual: =YEAR(TODAY())-YEAR(B2)-(DATE(YEAR(TODAY()),3,31)<B2)

Errores comunes

  • #VALUE!: la celda no es fecha real sino texto. Convierte con =DATEVALUE(A1).

Función MONTH

MONTH(fecha) devuelve un número 1–12. Útil para temporadas y presupuestos mensuales.

  • A1=2022-08-15=MONTH(A1)8.
  • Primer y último día del mes: =DATE(YEAR(A1),MONTH(A1),1) y =EOMONTH(A1,0).

Consejo

Para mostrar el nombre del mes según idioma: =TEXT(A1,"mmmm") (respeta la configuración regional).


Función DAY

DAY(fecha) obtiene el día del mes. Ayuda en reglas como “si es fin de mes, enviar recordatorio”.

  • D4=2019-05-22=DAY(D4)22.
  • ¿Es fin de mes? =DAY(A1)=DAY(EOMONTH(A1,0))

Función WEEKDAY

WEEKDAY(fecha,[tipo]) retorna el índice del día de la semana. El argumento [tipo] define qué día empieza la semana.

tipoInicioRangoUso típico
omitido o 1Domingo1–7Entornos anglosajones
2Lunes1–7Calendarios ISO/UE
3Lunes0–6Índices 0–6 en programación
  • F6=2021-09-12=WEEKDAY(F6,2)7 (domingo cuando lunes=1).
  • Nombre corto del día: =TEXT(A1,"ddd") (p. ej., lun, mar…).

Proyecto breve

Contar fines de semana en un rango: =SUM(--(WEEKDAY(ROW(INDIRECT(A1&":"&B1)),2)>=6)) con fechas seriales en A1 y B1.


Ejemplos Prácticos con Fechas

  • Clasificación trimestral: =ROUNDUP(MONTH(A2)/3,0) devuelve 1–4. Para etiqueta: ="T"&ROUNDUP(MONTH(A2)/3,0).
  • Edad exacta (años completos): =DATEDIF(B2,TODAY(),"Y") (si B2 es fecha de nacimiento real).
  • Diferencia de meses sin desbordes: =DATEDIF(A2,B2,"M") y días restantes: =DATEDIF(A2,B2,"MD").
  • Fin de mes laboral: si el cierre es el último día hábil: =WORKDAY(EOMONTH(A2,0)+1,-1).

Funciones de Hora en Excel

Las horas se almacenan como la fracción de un día (24 h). Por ejemplo, 06:00 = 0,25. Las funciones HOUR, MINUTE y SECOND extraen cada parte.

Consejo profesional

  • Para sumar horas que superan 24, usa formato personalizado [h]:mm:ss.
  • Para convertir texto “14:35:20” a hora real: =TIMEVALUE(A1).

Función HOUR

HOUR(hora) devuelve la hora (0–23).

  • A10=14:35:20=HOUR(A10)14.
  • Turno de trabajo (mañana/tarde/noche): =CHOOSE(1+(HOUR(A10)>=12)+(HOUR(A10)>=20),"Mañana","Tarde","Noche")

Función MINUTE

MINUTE(hora) devuelve los minutos (0–59).

  • C12=17:48:30=MINUTE(C12)48.
  • Redondeo a 15 minutos: =TIME(HOUR(A1),FLOOR(MINUTE(A1),15),0)

Función SECOND

SECOND(hora) devuelve los segundos (0–59).

  • E14=06:22:55=SECOND(E14)55.
  • Marcas de tiempo precisas: combina fecha y hora con =A2+B2 si A2 es fecha y B2 es hora.

Combinación útil

Construir una marca de tiempo desde texto “2025-09-01 09:30:45”: =DATEVALUE(LEFT(A1,10))+TIMEVALUE(RIGHT(A1,8))