Introducción
Excel es una de las herramientas más utilizadas para limpiar, transformar y analizar datos. En la práctica diaria es habitual recibir fechas y horas en texto (por ejemplo, al exportar desde sistemas externos o formularios web). Mientras ese texto no se convierta a un valor numérico interno, Excel no puede ordenar correctamente por fecha, calcular diferencias ni sumar tiempos.
Este tutorial presenta dos funciones clave para resolverlo: DATEVALUE
y TIMEVALUE
.
Verás cómo convertir cadenas a valores de fecha y hora confiables, cómo evitar ambigüedades de formato y cómo integrar estas conversiones en flujos reales de trabajo (informes de asistencia, tiempos de proyecto, dashboards, etc.).
¿Qué son DATEVALUE y TIMEVALUE?
Excel almacena las fechas como números de serie (días transcurridos desde un origen) y las horas como la fracción del día (por ejemplo, 0,5 = 12:00).
DATEVALUE
transforma un texto que “parece” fecha en su número de serie;
TIMEVALUE
hace lo mismo con un texto que “parece” hora y lo convierte en una fracción de día.
Función | Sintaxis | Entrada típica | Devuelve | Ejemplo rápido |
---|---|---|---|---|
DATEVALUE |
=DATEVALUE(texto_fecha) |
“15/08/2020”, “2020-08-15” | Número de serie de fecha | =DATEVALUE("15/08/2020") → 44049 |
TIMEVALUE |
=TIMEVALUE(texto_hora) |
“08:30”, “08:30 AM” | Fracción del día | =TIMEVALUE("08:30") → 0,354166… |
Consejos de compatibilidad: los nombres localizados de funciones pueden variar según el idioma de tu Excel.
Si tu archivo se comparte entre equipos con configuraciones distintas, es más robusto construir fechas y horas con DATE
/TIME
+ funciones de texto (ver ejemplos).
Funcionamiento de las Funciones
El día “1” suele corresponder al 1/1/1900 (en la mayoría de instalaciones actuales). Un día completo vale 1; por tanto, 6:00 equivale a 0,25 y 18:00 a 0,75. Al convertir texto, Excel intenta interpretar el formato según la configuración regional. Por eso, “03/04/2021” puede significar 3 de abril o 4 de marzo según el país.
Limitaciones y advertencias mínimas
- Ambigüedad de formato: evita depender de cadenas ambiguas. Prefiere ISO 8601 (
YYYY-MM-DD
) o normaliza el texto antes de convertir. - Fecha + hora en una sola cadena: no hay una función única; se suele dividir la cadena y sumar:
=DATEVALUE(parte_fecha) + TIMEVALUE(parte_hora)
. - Datos “sucios”: espacios invisibles, puntos en lugar de barras o zonas horarias incrustadas impiden la conversión. Usa
TRIM
,CLEAN
,SUBSTITUTE
para estandarizar. - Horas negativas o duraciones largas: si ves
####
, aplica un formato de número de tiempo acumulado (por ejemplo,[h]:mm
) o calcula duraciones como diferencia de valores numéricos.
Ejemplos Prácticos
Casos reales que cubren importaciones comunes y cálculos de negocio.
Ejemplo 1 — Conversión de fecha simple (texto → fecha):
Entrada (A2): "15/08/2020"
Fórmula: =DATEVALUE(A2)
Resultado: número de serie (formatea la celda como fecha para ver 15/08/2020)
Ejemplo 2 — Conversión de hora simple (texto → hora):
Entrada (B2): "08:30 AM"
Fórmula: =TIMEVALUE(B2)
Resultado: 0,354166… (formatea como hora para ver 08:30)
Ejemplo 3 — Cadena combinada “fecha hora” separada y sumada:
Entrada (C2): "15/08/2020 08:30"
Parte fecha: =DATEVALUE(LEFT(C2,10))
Parte hora: =TIMEVALUE(RIGHT(C2,5))
Fecha-hora: =DATEVALUE(LEFT(C2,10)) + TIMEVALUE(RIGHT(C2,5))
Ejemplo 4 — Normalizar formatos inconsistentes antes de convertir:
Entrada (D2): "2020.08.15"
Normaliza: =SUBSTITUTE(D2,".","-") → "2020-08-15"
Convierte: =DATEVALUE(SUBSTITUTE(D2,".","-"))
Ejemplo 5 — Construir fecha con piezas (texto “dd/mm/aaaa”):
Entrada (E2): "03/04/2021" (dd/mm/aaaa)
Día: =VALUE(LEFT(E2,2))
Mes: =VALUE(MID(E2,4,2))
Año: =VALUE(RIGHT(E2,4))
Fecha segura: =DATE(VALUE(RIGHT(E2,4)), VALUE(MID(E2,4,2)), VALUE(LEFT(E2,2)))
Ejemplo 6 — Registro de asistencia (calcular horas trabajadas):
Entrada:
A2: "2024-12-10 08:55" (entrada)
B2: "2024-12-10 17:35" (salida)
Fecha-hora entrada: =DATEVALUE(LEFT(A2,10)) + TIMEVALUE(RIGHT(A2,5))
Fecha-hora salida: =DATEVALUE(LEFT(B2,10)) + TIMEVALUE(RIGHT(B2,5))
Duración (días): = (salida) - (entrada)
Duración (horas): = ((salida) - (entrada)) * 24
Formato sugerido: [h]:mm (para ver, por ejemplo, 8:40)
Ejemplo 7 — Texto ISO 8601 típico de API (YYYY-MM-DDThh:mm:ss
):
Entrada (F2): "2025-01-18T14:05:00"
Fecha-hora: =DATEVALUE(LEFT(F2,10)) + TIMEVALUE(MID(F2,12,8))
Ejemplo 8 — Comprobar si la conversión fue correcta:
¿Es número? =ISNUMBER(DATEVALUE("15/08/2020")) → TRUE
¿Es texto? =ISTEXT("15/08/2020") → TRUE
Validación: =IF(ISNUMBER(DATEVALUE(A2)), "OK", "Revisar formato")
Con estas técnicas podrás: ordenar por fecha real, calcular diferencias (=B2-A2
), sumar horas de varios días, y alimentar gráficos o tablas dinámicas sin errores por formatos mixtos.
Además, si compartes el archivo entre regiones diferentes, prioriza formatos no ambiguos (ISO 8601), o construye las fechas con DATE
y las horas con TIME
a partir de subcadenas numéricas.