Table.FromColumns
Creates a table from a list of columns and specified values.
Syntax
Table.FromColumns(
lists as list,
optional columns as any
) as table
Remarks
Creates a table of type columns
from a list lists
containing nested lists with the column names and values. If some columns have more values then others, the missing values will be filled with the default value, 'null', if the columns are nullable.
Examples
Example #1
Return a table from a list of customer names in a list. Each value in the customer list item becomes a row value, and each list becomes a column.
Table.FromColumns({
{1, "Bob", "123-4567"},
{2, "Jim", "987-6543"},
{3, "Paul", "543-7890"}
})
Result:
Table.FromRecords({
[Column1 = 1, Column2 = 2, Column3 = 3],
[Column1 = "Bob", Column2 = "Jim", Column3 = "Paul"],
[Column1 = "123-4567", Column2 = "987-6543", Column3 = "543-7890"]
})
Example #2
Create a table from a given list of columns and a list of column names.
Table.FromColumns(
{
{1, "Bob", "123-4567"},
{2, "Jim", "987-6543"},
{3, "Paul", "543-7890"}
},
{"CustomerID", "Name", "Phone"}
)
Result:
Table.FromRecords({
[CustomerID = 1, Name = 2, Phone = 3],
[CustomerID = "Bob", Name = "Jim", Phone = "Paul"],
[CustomerID = "123-4567", Name = "987-6543", Phone = "543-7890"]
})
Example #3
Create a table with different number of columns per row. The missing row value is null.
Table.FromColumns(
{
{1, 2, 3},
{4, 5},
{6, 7, 8, 9}
},
{"column1", "column2", "column3"}
)
Result:
Table.FromRecords({
[column1 = 1, column2 = 4, column3 = 6],
[column1 = 2, column2 = 5, column3 = 7],
[column1 = 3, column2 = null, column3 = 8],
[column1 = null, column2 = null, column3 = 9]
})
Category
Table.Table construction