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
Frequent Visitor

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
November 2022 Update

Check it Out!

Click here to read more about the November 2022 updates!

Microsoft 365 Conference â__ December 6-8, 2022

Microsoft 365 Conference - 06-08 December

Join us in Las Vegas to experience community, incredible learning opportunities, and connections that will help grow skills, know-how, and more.

Power BI Dev Camp Session 27

Ted's Dev Camp

This session walks through creating a new Azure AD B2C tenant and configuring it with user flows and custom policies.