Created
August 26, 2023 07:48
-
-
Save bjulius/c674c5b1f25da3a6b7f44337eeb9d847 to your computer and use it in GitHub Desktop.
Excel BI Power Query Challenge 107
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let | |
Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content], | |
FIlter = Table.SelectRows(Source, each ([Column1] <> null and [Column1] <> "Date")), | |
AddDate = Table.TransformColumnTypes(Table.AddColumn(FIlter, "Date", each if Value.Type( [Column1] ) = DateTime.Type then [Column1] else null), {"Date", Date.Type}), | |
AddPO = Table.AddColumn(AddDate, "PONumber", each if Value.Type([Column3]) = Text.Type then [Column3] else null), | |
AddSupplier = Table.AddColumn(AddPO, "Supplier ", each if [Column2] <> null then [Column2] else null), | |
AddTax = Table.AddColumn(AddSupplier, "Tax", each if Text.StartsWith( Text.From( [Column1]), "Tax") then [Column3] else null), | |
AddAmount = Table.RemoveColumns( Table.AddColumn(AddTax, "Amount", each if Text.StartsWith( Text.From( [Column1]), "Amount") then [Column3] else null), {"Column1", "Column2", "Column3"}), | |
RemBlanks = Table.AddIndexColumn( Table.SelectRows(AddAmount, each not List.IsEmpty(List.RemoveMatchingItems(Record.FieldValues(_), {"", null}))), "Index", 0, 1), | |
IdxMod = Table.TransformColumns(RemBlanks, {{"Index", each Number.IntegerDivide(_, 4), type number}}), | |
UnpivOther = Table.UnpivotOtherColumns(IdxMod, {"Index"}, "Attribute", "Value"), | |
Pivot = Table.Pivot(UnpivOther, List.Distinct(UnpivOther[Attribute]), "Attribute", "Value"), | |
Clean = Table.RemoveColumns( Table.AddColumn(Pivot, "POValve", each [Amount] + [Tax]), {"Index", "Amount", "Tax"}) | |
in | |
Clean |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment