Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

Conditional Fill Down

i Havei Want

Null

Null
NullNull
NullNull
AA
NullA
NullA
NullA
AA
NullNull

 

  • See the working here - Open a blank query - Home - Advanced Editor - Remove everything from there and paste the below code to test

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WUorVQSYc0fi4BVOUYmMB", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Data = _t]),
        #"Replaced Value" = Table.ReplaceValue(Source,"",null,Replacer.ReplaceValue,{"Data"}),
        #"Duplicated Column" = Table.DuplicateColumn(#"Replaced Value", "Data", "Data1"),
        #"Duplicated Column1" = Table.DuplicateColumn(#"Duplicated Column", "Data", "Data2"),
        #"Filled Down" = Table.FillDown(#"Duplicated Column1",{"Data1"}),
        #"Filled Up" = Table.FillUp(#"Filled Down",{"Data2"}),
        Custom1 = Table.ReplaceValue(#"Filled Up",each [Data],each if [Data1]=[Data2] then [Data1] else [Data],Replacer.ReplaceValue,{"Data"}),
        #"Removed Columns" = Table.RemoveColumns(Custom1,{"Data1", "Data2"})
    in
        #"Removed Columns"

     

2 Replies

  • Vijay_A_Verma's avatar
    Vijay_A_Verma
    Most Valuable Professional

    See the working here - Open a blank query - Home - Advanced Editor - Remove everything from there and paste the below code to test

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WUorVQSYc0fi4BVOUYmMB", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Data = _t]),
        #"Replaced Value" = Table.ReplaceValue(Source,"",null,Replacer.ReplaceValue,{"Data"}),
        #"Duplicated Column" = Table.DuplicateColumn(#"Replaced Value", "Data", "Data1"),
        #"Duplicated Column1" = Table.DuplicateColumn(#"Duplicated Column", "Data", "Data2"),
        #"Filled Down" = Table.FillDown(#"Duplicated Column1",{"Data1"}),
        #"Filled Up" = Table.FillUp(#"Filled Down",{"Data2"}),
        Custom1 = Table.ReplaceValue(#"Filled Up",each [Data],each if [Data1]=[Data2] then [Data1] else [Data],Replacer.ReplaceValue,{"Data"}),
        #"Removed Columns" = Table.RemoveColumns(Custom1,{"Data1", "Data2"})
    in
        #"Removed Columns"

     

    • Anonymous's avatar
      Anonymous
      Not applicable

      You Are Rockstar Bro Done