¿Alguna vez te has preguntado por qué si recibes un libro de Excel desde Estados Unidos, los nombres de las funciones están en tu idioma cuando en su origen se escribieron en inglés?
La mayor parte de programas que instalamos en nuestros equipos disponen de un conjunto de parámetros, llamado configuración regional, donde se almacenan entre otros el idioma, el país, el formato de fecha o la moneda del país…
Esta configuración regional forma parte de los metadatos del archivo.
Gracias a la configuración regional, una fecha introducida en el formato utilizado en EE.UU. (mes/día/año), se convierte automáticamente al formato europeo (que es día/mes/año) cuando abrimos el archivo.
Esto es de gran utilidad con archivos que contienen metadatos, como un libro de Excel o un archivo de Word, pero cuando trabajas con archivos planos, como csv o archivos de texto y deseas trabajar con Excel los datos que contiene, la cosa se complica un poco. Imagina que te envían un archivo como el de la imagen:
Como se puede apreciar, se muestran las transacciones realizadas en el mes de mayo de 2018 (como se ve en el nombre del archivo), pero las fechas que aparecen tienen formato anglosajón (primero el mes, que es 5, y luego va el día y el año).
Si abres este archivo con Excel, el formato de la fecha no cambia, porque el archivo csv no tiene metadatos y por tanto, Excel no puede determinar en qué parte de la fecha se encuentran el mes y el día. Cuando utilizamos Power Query para trabajar con archivos csv o txt, debemos extremar la atención a los formatos de fechas y monedas, porque nos ocurrirá lo mismo.
Para transformar esta columna al formato de fecha europeo y así evitar futuros problemas a la hora de trabajar con fechas, utilizaremos la herramienta Configuración regional.
Haz clic en el icono del encabezado de la columna y selecciona la opción Usar configuración regional…
Cuando se abra el cuadro de diálogo Cambiar tipo con la configuración regional verás que tiene dos desplegables. En el primero debes seleccionar el tipo de dato al que quieres convertir la columna.
En el segundo debes seleccionar el idioma y el país de procedencia.
Una vez aceptado el cuadro de diálogo, el formato de la fecha se “traducirá” del idioma que has seleccionado en el cuadro de diálogo al que tienes configurado en tu equipo.
Existen otros métodos para transformar un formato de fecha a otro, pero únicamente este te permitirá distribuir el archivo a personas de otros países y tener la certeza de que lo recibirán e interpretarán correctamente.
Si vas a compartir tus consultas de Power Query con personas de otros países, te recomiendo que utilices la configuración regional tanto para tratar las fechas, como el formato de moneda. Si te ha parecido interesante, ¡compártelo!
4 comentarios en “Cómo solucionar el problema fechas en diferentes idiomas”
Gracias, me resultó muy útil esta técnica
muchas gracias, me has ayudado y ahorrado tiempo.
Dtb.
Hola Sergio, una cuestión relacionada con el formato de fechas en vba y el idioma. Tengo una macro en la que inserto una fecha dd/mm/aaaa y cuando llega a esa fecha ejecuta una acción. Si esa macro se utiliza en otro país por ejemplo EEUU o Gran Bretaña que tienen formatos diferentes, la acción se ejecutará igual al llegar a esa fecha? Gracias y saludos
Hola Dani. Muy interesante la pregunta.
Para conocer la respuesta te invito a que muestres el cuadro de diálogo Formato de número haciendo presionando Ctrl+1. A continuación dirígete a la categoría Fecha.
Los formatos de fecha que tienen un asterisco al lado se transformarán en formato adecuado según el país desde el que se abra el archivo.
Puedes utilizar la siguiente línea de código:
MiFecha = Format(Date, "Short Date")
Los comentarios están cerrados.