Forum Discussion

Arpitpawar's avatar
Arpitpawar
New Member
2 years ago
Solved

Error in power query editor

I am working with one file that contains a column time that contains value for example like 2 hrs and 20 min so I want to convert into min like 140 min. 

 

So kindly help me by giving me the solution

  • Hi Arpitpawar, I don't know how exactly is your column with that time or duration stored but you can do something like this:

     

    Result

     

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMsooKlYwMsjNzFPSUTKyMjJQio0FAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t]),
        Ad_Col1ToMinutes = Table.AddColumn(Source, "Col1 to Minutes", each 
         [ l = List.Transform(Splitter.SplitTextByCharacterTransition({"0".."9"}, {"a".."z", "A".."Z"})([Column1]), (x)=> Number.From(Text.Select(x, {"0".."9"}))),
           m = l{0} * 60 + l{1}
         ][m], Int64.Type
    ),
        Ad_Col2ToMinutes = Table.AddColumn(Ad_Col1ToMinutes, "Col2 to Minutes", each 
         [ l = List.Transform(Text.Split([Column2], ":"), (x)=> Number.From(Text.Trim(x))),
           m = l{0} * 60 + l{1}
         ][m], Int64.Type)
    in
        Ad_Col2ToMinutes

     

  • Anonymous's avatar
    Anonymous
    2 years ago

    Hi Arpitpawar ,

    Here is my sample data:

    The data type is Duration.
    Please follow the screenshot below:

    The final output is as below:


    Best Regards,
    Dino Tao
    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

2 Replies

  • dufoq3's avatar
    dufoq3
    Community Champion

    Hi Arpitpawar, I don't know how exactly is your column with that time or duration stored but you can do something like this:

     

    Result

     

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMsooKlYwMsjNzFPSUTKyMjJQio0FAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t]),
        Ad_Col1ToMinutes = Table.AddColumn(Source, "Col1 to Minutes", each 
         [ l = List.Transform(Splitter.SplitTextByCharacterTransition({"0".."9"}, {"a".."z", "A".."Z"})([Column1]), (x)=> Number.From(Text.Select(x, {"0".."9"}))),
           m = l{0} * 60 + l{1}
         ][m], Int64.Type
    ),
        Ad_Col2ToMinutes = Table.AddColumn(Ad_Col1ToMinutes, "Col2 to Minutes", each 
         [ l = List.Transform(Text.Split([Column2], ":"), (x)=> Number.From(Text.Trim(x))),
           m = l{0} * 60 + l{1}
         ][m], Int64.Type)
    in
        Ad_Col2ToMinutes

     

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi Arpitpawar ,

    Here is my sample data:

    The data type is Duration.
    Please follow the screenshot below:

    The final output is as below:


    Best Regards,
    Dino Tao
    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.