This time we’re going bigger than ever. Fabric, Power BI, SQL, AI and more. We're covering it all. You won't want to miss it.
Learn moreDid you hear? There's a new SQL AI Developer certification (DP-800). Start preparing now and be one of the first to get certified. Register now
Hello,
I have few columns and I want to sort columns based on the month & Year. For example, 0723, 0823, 1023, 0124 etc..
My data is connected to a folder so everytime a new PDF is added with MMYY, the data will add a new column for that month.
For example, I have columns below.
Name, Category, Serial Number, then months 0723, 0823, 1023, 0124, Total
So I want to keep all the columns as it and the month columns should be sorted as the earliest month should appear first. As you see in the image below, it is showing 0723 before 0423
Insert this step where Source should be replaced with your previous step name
= [a = Table.ColumnNames(Source), i1 = List.PositionOf(a, "Serial Num"), i2 = List.PositionOf(a, "Total"), l1 = List.Range(a, 0, i1 + 1), l2 = List.Range(a, i1 + 1, i2 - i1 - 1), l3 = List.Range(a, i2, List.Count(a) - i2), result = Table.ReorderColumns(Source, l1 & List.Sort(l2) & l3)][result]
For testing of above step, you can use this complet set of code
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WSlTSUXIEYmMgNjICEqYmQAKEDUE8M1OQnIkpWFVsLAA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Name = _t, Category = _t, #"Serial Num" = _t, #"0723" = _t, #"0423" = _t, #"0923" = _t, #"0924" = _t, #"0925" = _t, Total = _t, abc = _t]),
Custom1 = [a = Table.ColumnNames(Source), i1 = List.PositionOf(a, "Serial Num"), i2 = List.PositionOf(a, "Total"), l1 = List.Range(a, 0, i1 + 1), l2 = List.Range(a, i1 + 1, i2 - i1 - 1), l3 = List.Range(a, i2, List.Count(a) - i2), result = Table.ReorderColumns(Source, l1 & List.Sort(l2) & l3)][result]
in
Custom1
Check out the April 2026 Power BI update to learn about new features.
Sign up to receive a private message when registration opens and key events begin.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.