Power Query:
let
Source = Excel.CurrentWorkbook(){[Name="rename_delete"]}[Content],
ReplacementList = {"0".."9", "@", "&", "%"},
SelectCol = List.Select(Table.ColumnNames(Source), each not Text.Contains(_, "*")),
RenameCol = List.Transform(SelectCol, each {_, Text.Upper(Text.Replace(_, "1", ""))}),
RemovedOtherColumns = Table.SelectColumns(Source, SelectCol),
RenamedColumns = Table.RenameColumns(RemovedOtherColumns,RenameCol)
in
RenamedColumns
Need help on how to make the replacement more dynamic. For example, when a new column is added, a query checks if it has numbers or special characters in a name and removes them.