cancel
Showing results for 
Search instead for 
Did you mean: 
Reply

How to Convert Date given in Spanish to English

Hi There,

 

Hope you doing well .

 

I am stuck a data which have date column given in spanish and its coming in "Text" Format . When i am trying to transform this into power query its giving me an error . 
Can anyone help me out in this how can i convert this given Spanish Date value in English(Date Format)

 

Please see below screenshot for the same:

Capture_2.JPGCapture_3.JPG

 

 

 

Thanks 

1 ACCEPTED SOLUTION
sreenathv
Solution Sage
Solution Sage

In normal translation, you could use the Microsoft Translator API that can be used in Power BI.  Google it. Here you don't have to actually rely on the translation and you could do the translation in DAX itself, based on your sample data, I am giving you the following DAX code. You have to add more months to the SWITCH statement.

 

sreenathv_0-1618306331954.png

Here is the dax code.

DateEN = 
VAR DayOfTheDate = VALUE(LEFT(SpanishCalendar[Date],SEARCH(" ",SpanishCalendar[Date],1,BLANK())-1))
VAR YearOfTheDate = VALUE(RIGHT(SpanishCalendar[Date],4))
VAR MidPortion = MID(SpanishCalendar[Date],SEARCH(" ",SpanishCalendar[Date],1,BLANK())+1,LEN(SpanishCalendar[Date])-5-SEARCH(" ",SpanishCalendar[Date],1,BLANK()))
VAR MonthOfTheDate =
    SWITCH(
        TRUE(),
        MidPortion="de janeiro de",1,
        MidPortion="de fevereiro de",2,
        MidPortion="de marco de",3,
        MidPortion="de abril de",4,
        MidPortion="de novembro de",11,
        MidPortion="de dezembro de",12,
        0
    )
RETURN
DATE(YearOfTheDate,MonthOfTheDate,DayOfTheDate)

View solution in original post

3 REPLIES 3
nmasimore
Helper I
Helper I

Another solution that perhaps may work:

 

Right click column -> Change type -> Using locale

 

Search for Spanish

 

nmasimore_0-1642019736837.png

 

 

sreenathv
Solution Sage
Solution Sage

In normal translation, you could use the Microsoft Translator API that can be used in Power BI.  Google it. Here you don't have to actually rely on the translation and you could do the translation in DAX itself, based on your sample data, I am giving you the following DAX code. You have to add more months to the SWITCH statement.

 

sreenathv_0-1618306331954.png

Here is the dax code.

DateEN = 
VAR DayOfTheDate = VALUE(LEFT(SpanishCalendar[Date],SEARCH(" ",SpanishCalendar[Date],1,BLANK())-1))
VAR YearOfTheDate = VALUE(RIGHT(SpanishCalendar[Date],4))
VAR MidPortion = MID(SpanishCalendar[Date],SEARCH(" ",SpanishCalendar[Date],1,BLANK())+1,LEN(SpanishCalendar[Date])-5-SEARCH(" ",SpanishCalendar[Date],1,BLANK()))
VAR MonthOfTheDate =
    SWITCH(
        TRUE(),
        MidPortion="de janeiro de",1,
        MidPortion="de fevereiro de",2,
        MidPortion="de marco de",3,
        MidPortion="de abril de",4,
        MidPortion="de novembro de",11,
        MidPortion="de dezembro de",12,
        0
    )
RETURN
DATE(YearOfTheDate,MonthOfTheDate,DayOfTheDate)

Thank you @sreenathv  .

 

Really appreicate your help.

Helpful resources

Announcements
PBI Sept Update Carousel

Power BI September 2023 Update

Take a look at the September 2023 Power BI update to learn more.

Learn Live

Learn Live: Event Series

Join Microsoft Reactor and learn from developers.

Dashboard in a day with date

Exclusive opportunity for Women!

Join us for a free, hands-on Microsoft workshop led by women trainers for women where you will learn how to build a Dashboard in a Day!

MPPC 2023 PBI Carousel

Power Platform Conference-Power BI and Fabric Sessions

Join us Oct 1 - 6 in Las Vegas for the Microsoft Power Platform Conference.

Top Solution Authors