March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
I am trying to remove a set of columns from a table by their index/position as opposed to the column name, because the column names can vary from month to month. I am using the code below, derived from a similar method I used before with the Table.AddColumn function (with no issues), but now when I try to use it in the Table.RemoveColumns function I get this error: "Expression.Error: The name '_' wasn't recognized. Make sure it's spelled correctly." Can anyone help explain why the underscore doesn't work in this instance, and what I should use instead? Thanks in advance!
#"Removed Columns1" = Table.RemoveColumns(
Source,
{
each Record.Field(_, Table.ColumnNames(Source){12}),
Record.Field(_, Table.ColumnNames(Source){14}),
Record.Field(_, Table.ColumnNames(Source){16})
},
MissingField.Ignore
)
Solved! Go to Solution.
Try this instead:
#"Removed Columns1" = Table.RemoveColumns(
Source,
{
Table.ColumnNames(Source){12},
Table.ColumnNames(Source){14},
Table.ColumnNames(Source){16}
},
MissingField.Ignore
)
Pat
Try this instead:
#"Removed Columns1" = Table.RemoveColumns(
Source,
{
Table.ColumnNames(Source){12},
Table.ColumnNames(Source){14},
Table.ColumnNames(Source){16}
},
MissingField.Ignore
)
Pat
Well how about that! It works perfectly! However, it does kind of make me wonder why the Record.Field was needed in my previous Table.AddColumn query, because I had initially tried that one with just using Table.ColumnNames and it failed. I suppose that musing is for another day though. Thank you so much for your quick help! Cheers!
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!
Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.