Forum Discussion
Table.SelectColumns, select multiple columns from a list
Hi,
I have a table here, it has 150 columns, I want to select 45 of them. Is there a way to do this without having to check box one by one? I also don't want to unpivot and join either, since this table has 200,000 rows.
I was thinking if there is a way to past a list into the Table.SelectColumns, maybe put the 45 columns I want as a variable and some how pass it into Table.SelectColumns Step.
let
Source = Csv.Document(File.Contents("XYZ.csv"),[Delimiter=",", Columns=150, Encoding=65001, QuoteStyle=QuoteStyle.None]),
#"Promoted Headers" = Table.PromoteHeaders(Source, [PromoteAllScalars=true]),
#"Removed Other Columns" = Table.SelectColumns(#"Promoted Headers",{"My Columns_1"..."My Columns_45"})
in
#"Removed Other Columns"
I tried something like this but didn't work
(X ) => {"NAME","TRANSACTION_NUM"..."Column_45"}
let
Source = Csv.Document(File.Contents("XYZ.csv"),[Delimiter=",", Columns=150, Encoding=65001, QuoteStyle=QuoteStyle.None]),
#"Promoted Headers" = Table.PromoteHeaders(Source, [PromoteAllScalars=true]),
#"Removed Other Columns" = Table.SelectColumns(#"Promoted Headers",{X})
in
#"Removed Other Columns"
peterhui50 not sure why, try this:
let X = {"NAME","TRANSACTION_NUM"..."Column_45"}, Source = Csv.Document(File.Contents("XYZ.csv"),[Delimiter=",", Columns=150, Encoding=65001, QuoteStyle=QuoteStyle.None]), #"Promoted Headers" = Table.PromoteHeaders(Source, [PromoteAllScalars=true]), #"Removed Other Columns" = Table.SelectColumns(#"Promoted Headers",X) in #"Removed Other Columns"Check my latest blog post Comparing Selected Client With Other Top N Clients | PeryTUS I would ❤ Kudos if my solution helped. 👉 If you can spend time posting the question, you can also make efforts to give Kudos to whoever helped to solve your problem. It is a token of appreciation!
⚡Visit us at https://perytus.com, your one-stop-shop for Power BI-related projects/training/consultancy.⚡
4 Replies
- parry2kSuper User
peterhui50 not sure why, try this:
let X = {"NAME","TRANSACTION_NUM"..."Column_45"}, Source = Csv.Document(File.Contents("XYZ.csv"),[Delimiter=",", Columns=150, Encoding=65001, QuoteStyle=QuoteStyle.None]), #"Promoted Headers" = Table.PromoteHeaders(Source, [PromoteAllScalars=true]), #"Removed Other Columns" = Table.SelectColumns(#"Promoted Headers",X) in #"Removed Other Columns"Check my latest blog post Comparing Selected Client With Other Top N Clients | PeryTUS I would ❤ Kudos if my solution helped. 👉 If you can spend time posting the question, you can also make efforts to give Kudos to whoever helped to solve your problem. It is a token of appreciation!
⚡Visit us at https://perytus.com, your one-stop-shop for Power BI-related projects/training/consultancy.⚡
- parry2kSuper User
peterhui50 Since x is already a list, you don't need to wrap it in curly brackets:
(X ) => {"NAME","TRANSACTION_NUM"..."Column_45"} let Source = Csv.Document(File.Contents("XYZ.csv"),[Delimiter=",", Columns=150, Encoding=65001, QuoteStyle=QuoteStyle.None]), #"Promoted Headers" = Table.PromoteHeaders(Source, [PromoteAllScalars=true]), #"Removed Other Columns" = Table.SelectColumns(#"Promoted Headers",X) in #"Removed Other Columns"Check my latest blog post Comparing Selected Client With Other Top N Clients | PeryTUS I would ❤ Kudos if my solution helped. 👉 If you can spend time posting the question, you can also make efforts to give Kudos to whoever helped to solve your problem. It is a token of appreciation!
⚡Visit us at https://perytus.com, your one-stop-shop for Power BI-related projects/training/consultancy.⚡
- peterhui50Helper III
gave me a strange error called Eof Expected
odd...
- peterhui50Helper III
It worked, but why does this list have to be inside the "let" statement?