Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
7 years ago
Solved

Dynamic Column Name (M/PowerQuery) Difficulty

Hi all,

 

I am importing many files (with the same structure from a folder). These files automatically append to each other.

 

I required to change  one of the column names based on it's index position. (as when new files are added to the folder I can't be certain the same file is going to be taken as the first file. This could lead to the column header name to being different.

 

= Table.RenameColumns(#"Promoted Headers",{{Table.ColumnNames(#"Promoted Headers"){28}, "--1"}})

I succesfully changed the column header name. Everything is good up until this point! 

 

However, if the column name is already --1. (The name I am trying to change to) PowerBI will return an error saying:

 

Expression.Error: The field '--1' already exists in the record.
Details:
Name=--1
Value=

 

I considered using a conditional formula inside of this where I would say If = -1, take the previous query. This isn't working and even if it is, I need to replicate this rename column for 5 columns. I can't take the previous query because it depends on which ones worked.

 

Sorry If this isn't clear, I can try clarify if the question again.

 

Thank you

  • Anonymous's avatar
    Anonymous
    7 years ago
    Solution:
    When you import fikes from Share point a sample file is created. You can set which file you like to be selected as your first query.

    I can now ensure my first query containta the relevant headers :)

    (For the if statement, I still cant set the word as it will say you already have this word)

2 Replies

  • TeigeGao's avatar
    TeigeGao
    Solution Sage

    Hi Anonymous ,

    Could you please tell us what's the problem you meet when using the if function?

    Best Regards,

    Teige

    • Anonymous's avatar
      Anonymous
      Not applicable
      Solution:
      When you import fikes from Share point a sample file is created. You can set which file you like to be selected as your first query.

      I can now ensure my first query containta the relevant headers :)

      (For the if statement, I still cant set the word as it will say you already have this word)