Forum Discussion

Rygar's avatar
Rygar
Helper II
2 years ago
Solved

Naming existing Columns 1 to N

Hello!

 

for Example, in a six Column table I would like to name these Columns from 1 to 6 or from c1 to c6 or something like that.

I can not use rename (old name=>new name), because I have multiple tables with totaly different Column names. But the order of the columns is always same (date, product, price, ... ....) 

My goal is to append all the tables together.

 

My Question: can I Name (not rename) columns by Numers 1 to N or by using a predefined List of Names or something else?

 

Thanks, Michael

 

  • I think you can do a dynamic rename using Table.ColumnNames.

     

    For example,

    let
        Source = Table.FromRows({{"a","b","c","d","e"}}),
        CurrentColumnNames = Table.ColumnNames(Source),
        NewColumnNames = List.Transform({1..List.Count(CurrentColumnNames)}, Number.ToText),
        #"Renamed Columns" = Table.RenameColumns(Source, List.Zip({CurrentColumnNames, NewColumnNames}))
    in
        #"Renamed Columns"

2 Replies

  • I think you can do a dynamic rename using Table.ColumnNames.

     

    For example,

    let
        Source = Table.FromRows({{"a","b","c","d","e"}}),
        CurrentColumnNames = Table.ColumnNames(Source),
        NewColumnNames = List.Transform({1..List.Count(CurrentColumnNames)}, Number.ToText),
        #"Renamed Columns" = Table.RenameColumns(Source, List.Zip({CurrentColumnNames, NewColumnNames}))
    in
        #"Renamed Columns"