Returns a table with the columns in the specified order.

function (table as table, columnOrder as list, optional missingField as nullable any) as table


Returns a table from the input table, with the columns in the order specified by columnOrder. Columns that are not specified in the list will not be reordered. If the column doesn't exist, an exception is thrown unless the optional parameter missingField specifies an alternative (eg. MissingField.UseNull or MissingField.Ignore).


Table.Column operations


Switch the order of the columns [Phone] and [Name] in the table.

Table.ReorderColumns(Table.FromRecords({[CustomerID=1, Phone = "123-4567", Name ="Bob"]}), {"Name","Phone"})

Table.FromRecords({[CustomerID=1,Name="Bob", Phone="123-4567"]})

Switch the order of the columns [Phone] and [Address] or use "MissingField.Ignore" in the table. It doesn't change the table because column [Address] doesn't exist.

Table.ReorderColumns(Table.FromRecords({[CustomerID=1, Name = "Bob", Phone = "123-4567"]}), {"Phone", "Address"}, MissingField.Ignore)

Table.FromRecords({[CustomerID=1,Name="Bob", Phone="123-4567"]})