Forum Discussion
Add multiple columns in a single step (Power Query)
- 8 years ago
Hi Anonymous,
To what I could understood you wnat to append columns if you append two columns that have different columns the ones that don't exist in the other table will automaticly be filled with nulls so you don't need to create those addtional columns:
Regards,
MFelix
- 8 years ago
This post was concurrent with MFelix' post.
Actually I don't understand the requirement, as you can just append tables with different columns.
Null values will be added automatically.
Anyhow if you still want to add multiple blank columns (I hope null is also fine) then you can use Table.SelectColumns with 3rd argument MissingField.UseNull (see bottom query below).
All 4 queries below consist of 1 line each.
Query Table5Columns:
= #table(5,{{1..5}})Query Table1Column:
= #table(1,List.Zip({{1..3}}))Query Appended:
= Table5Columns&Table1Column
Query Table1AddedColumns:
= Table.SelectColumns(Table1Column,Table.ColumnNames(Table5Columns),MissingField.UseNull)
I simply need to add 1 Column with values "CD" in each row and 3 more empty columns (spaceholders).
In ideal, name or rename them in one go also.
I want to minimise the amount of steps, - as later it will be repeated in around 10 different tables.
Hi RollKoll ,
Add a new column with the following code:
Table.FromRecords({
[Column1 = "CD", Column2 = "", Column3 = "", Column4 = ""]
})
You can use other names insted of Colum1 , ..,. Column4 then just expand the columns:
- RollKoll4 years agoFrequent Visitor
Thanks for an option 😉 works
P.S.Kinda funny... such a simple task, has to be done with a "workaround"
- MFelix4 years agoSuper User
This is not a workaround, you wanted to add all the values at once so we are grouping 4 steps into one just that.
Is the same that in excel you wanted to add the 4 columns to each table but not doing it mannually you would create a VBA macro to do it right?
- RollKoll4 years agoFrequent Visitor
I called it "workaround", as the function Table.FromRecords is not adding Columns directly, but rather merges two tables.
Original + newTable.Anyway, it works nicely and what I needed.
Thanks again