let
Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Customer Name", type text}, {"Customer Type", type text}, {"2013 Member", type text}, {"2013 Sales", Int64.Type}, {"2013 Rep", type text}, {"2014 Member", type text}, {"2014 Sales", Int64.Type}, {"2014 Rep", type text}, {"2015...", type any}}),
#"Unpivoted Other Columns" = Table.UnpivotOtherColumns(#"Changed Type", {"Customer Name", "Customer Type"}, "Attribute", "Value"),
#"Added Custom" = Table.AddColumn(#"Unpivoted Other Columns", "Member", each if Text.Contains([Attribute],"Member") then [Value] else null),
#"Added Custom1" = Table.AddColumn(#"Added Custom", "Sales", each if Text.Contains([Attribute],"Sales") then [Value] else null),
#"Added Custom2" = Table.AddColumn(#"Added Custom1", "Rep", each if Text.Contains([Attribute], "Rep") then[Value] else null),
#"Filled Up" = Table.FillUp(#"Added Custom2",{"Rep", "Sales"}),
#"Filtered Rows" = Table.SelectRows(#"Filled Up", each ([Member] <> null)),
#"Removed Columns" = Table.RemoveColumns(#"Filtered Rows",{"Value"}),
#"Split Column by Character Transition" = Table.SplitColumn(#"Removed Columns", "Attribute", Splitter.SplitTextByCharacterTransition({"0".."9"}, (c) => not List.Contains({"0".."9"}, c)), {"Attribute.1", "Attribute.2"}),
#"Removed Columns1" = Table.RemoveColumns(#"Split Column by Character Transition",{"Attribute.2"}),
#"Renamed Columns" = Table.RenameColumns(#"Removed Columns1",{{"Attribute.1", "Year"}})
in
#"Renamed Columns"