Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Request now

Reply
Anonymous
Not applicable

Changing fields

Hi, here is my problem :

 

I am suppose to build data visualisation based on a data.csv file deposed by another company's service on a shared repository. But this service concerned may changes the first row of this file (corresponding to header's name) over time. I would like a solution to keep visualizations working even thow header names change. 

Is there a way to add a step in the query editor to say : "If a header's name is "Hello", "helo" or "helllo" rename it "hello" ? so i could build my data visualisation on the field named "hello".

Or any other solution ?

 

Let me know if I hadn't been clear. Thanks in advance.

1 ACCEPTED SOLUTION
rajulshah
Resident Rockstar
Resident Rockstar

Hello @Anonymous,

 

You can create a function named 'Column Name Transformer' as below:

(name as text) as text =>
let
  #"Split into Parts" = Text.ToList(name),
  #"Change Case" =
    (input as text) as text =>
      if Comparer.Equals(Comparer.OrdinalIgnoreCase, "Hello", input) or Comparer.Equals(Comparer.OrdinalIgnoreCase, "helo", input) or Comparer.Equals(Comparer.OrdinalIgnoreCase, "helllo", input) 
      then "hello"
      else input,
    #"Transformed Parts" = List.Transform(#"Split into Parts", #"Change Case"),
    Result = Text.Combine(#"Transformed Parts")
in
  Result

 

And then you can add a line of code in Advanced Editor for that table as below:

#"Renamed Columns" = Table.TransformColumnNames(Previous Step,#"Column Name Transformer")

 

Hope this helps.

View solution in original post

1 REPLY 1
rajulshah
Resident Rockstar
Resident Rockstar

Hello @Anonymous,

 

You can create a function named 'Column Name Transformer' as below:

(name as text) as text =>
let
  #"Split into Parts" = Text.ToList(name),
  #"Change Case" =
    (input as text) as text =>
      if Comparer.Equals(Comparer.OrdinalIgnoreCase, "Hello", input) or Comparer.Equals(Comparer.OrdinalIgnoreCase, "helo", input) or Comparer.Equals(Comparer.OrdinalIgnoreCase, "helllo", input) 
      then "hello"
      else input,
    #"Transformed Parts" = List.Transform(#"Split into Parts", #"Change Case"),
    Result = Text.Combine(#"Transformed Parts")
in
  Result

 

And then you can add a line of code in Advanced Editor for that table as below:

#"Renamed Columns" = Table.TransformColumnNames(Previous Step,#"Column Name Transformer")

 

Hope this helps.

Helpful resources

Announcements
November Power BI Update Carousel

Power BI Monthly Update - November 2025

Check out the November 2025 Power BI update to learn about new features.

Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Solution Authors