viernes, 2 de octubre de 2015

Convertir número a fecha en Excel

Al trabajar con datos provenientes de otros sistemas será común obtener las fechas en un formato que no es válido para Excel. En ocasiones los datos de fechas están formados por la concatenación de los dígitos del día, mes y año pero debido a su formato son reconocidos por Excel como números. En esta ocasión te mostraré una fórmula que te permitirá hacer la conversión de números a fechas en Excel.
Pero antes de construir nuestra fórmula debo recordarte que todas las fechas en Excel están formadas sin excepción por día, mes y año. Si por alguna razón intentas formar una fecha utilizando solamente el día y el mes, Excel utilizará de manera predeterminada el año actual, lo cual podría cambiar el significado de las fechas.

Cómo convertir números a fechas

Para nuestro primer ejemplo supondremos que al importar los datos a Excel obtenemos una columna con números de 8 dígitos donde los primeros dos dígitos indican el día, los siguientes dos dígitos indican el mes y finalmente los últimos cuatro dígitos son el año.
Convertir número a fecha en Excel
Considera que cuando el día es menor a 10 se debería mostrar un cero al principio pero al ser un valor numérico, Excel omite dicho cero a la izquierda. Tal es el caso de la celda A4 que muestra el número 5121992 que consta de solo 7 dígitos y que representa el día 05 de diciembre de 1992.
El primer paso para convertir el número a fecha es utilizar la función TEXTO que nos ayudará a dar un formato adecuado al número. Si estás familiarizado con esta función, sabrás que solo tiene dos argumentos y que el segundo de ellos es donde indicamos el formato que deseamos aplicar al valor. Ya que en nuestro ejemplo tenemos números de 8 dígitos, me interesa agruparlos como 2-2-4 utilizando el guion medio de manera que queden divididos con un formato muy parecido al de las fechas en Excel.  Ese formato lo lograremos con la siguiente fórmula:
=TEXTO(A2,"##-##-####")
Recuerda que el símbolo # representa cualquier dígito y en este caso le indicamos a la función TEXTO que aplique un formato considerando 8 posibles dígitos. Observa el resultado de aplicar esta fórmula a los datos de ejemplo:
Mostrar números como fechas en Excel
Pareciera que con esta función hemos terminado nuestra tarea, pero si observas con detenimiento podrás darte cuenta que los valores de las celdas están alineados a la izquierda, lo que quiere decir que en este momento tenemos cadenas de texto, que se ven como fechas pero en realidad aún no son fechas válidas para Excel. Para convertir dichas cadenas de texto en fechas auténticas podemos utilizar la función FECHANUMERO de la siguiente manera:
=FECHANUMERO(TEXTO(A2,"##-##-####"))
Al modificar nuestra fórmula y aplicarla a los datos, terminaremos con una serie de números tal como se muestra en la siguiente imagen.
Pasar de número a fecha en Excel
Este resultado no deberá sorprenderte porque las fechas en Excel son valores numéricos y lo único que debemos hacer será cambiar el formato de las celdas para asegurarnos de que tengan un formato de fecha.
Cómo transformar números en fechas en Excel
El objetivo de la función FECHANUMERO es convertir una fecha en texto a su valor numérico en Excel de manera que dicho valor pueda ser tratado efectivamente como una fecha. Otro método para hacer la conversión es multiplicar el resultado de la función TEXTO por un valor numérico y que puede ser logrado con la siguiente fórmula:
=--TEXTO(D2,"##-##-####")
Observa los dos símbolos negativos al inicio de la fórmula donde cada uno de ellos indica una multiplicación por el número uno negativo (-1). La primera multiplicación es necesaria para convertir el resultado de la función TEXTO en un valor numérico y que será negativo por lo que la segunda multiplicación tendrá el objetivo de convertir dicho valor en positivo. Observa el resultado de aplicar esta fórmula a nuestros datos de ejemplo.
Convertir un número a formato de fecha en Excel
Cualquiera de los dos métodos que utilices, ya sea la función FECHANUMERO o el doble signo negativo, te permitirán convertir un número en fecha en Excel.

Fechas con años de dos dígitos

Los ejemplos anteriores los hemos realizado suponiendo que el año está indicado por cuatro dígitos, pero si tus datos indican los años solo por dos dígitos entonces deberás modificar el formato de las fórmulas anteriores de la siguiente manera:
=FECHANUMERO(TEXTO(G2,"##-##-##"))
Observa que dentro de la función TEXTO he indicado un formato de la forma 2-2-2 de manera que los años quedan indicados por los últimos dos dígitos. Al momento de aplicar la fórmula a un grupo de números de 6 dígitos obtendremos el siguiente resultado.
Cómo convertir un número en fecha en Excel
Por supuesto que también podrás utilizar la fórmula de los símbolos negativos y solamente deberás modificar el formato indicado dentro de la función TEXTO.

La regla 2029 en años de dos dígitos

Al trabajar con fechas que utilizan años de dos dígitos es necesario recordar que existe una restricción para el rango de fechas que se pueden representar con dicho formato. De manera predeterminada podrás representar fechas desde el 01 de enero de 1930 y hasta el 31 de diciembre de 2029.
Esto quiere decir que, al momento de ingresar el valor 29 como el año de una fecha, Excel lo interpretará como el año 2029. Si ingresas el año 30, se interpretará automáticamente como el año 1930. Esta no es una regla de Excel sino del sistema operativo Windows, así que si deseas modificar la interpretación de este rango de años podrás hacerlo desde el Panel de Control > Configuración regional y de idioma > Configuración adicional > Fecha.
Convertir número a formato de fecha en Excel
Hasta aquí con los ejemplos para convertir números a fechas en Excel. Si en lugar de tener números tienes cadenas de texto en diferentes formatos que deseas convertir a fechas en Excel, entonces te recomiendo consultar el artículo Convertir texto a formato fecha en Excel.

No hay comentarios:

Publicar un comentario