首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Power Query中有没有一种方法可以用列位置替换列名?

在Power Query中有没有一种方法可以用列位置替换列名?
EN

Stack Overflow用户
提问于 2021-10-12 18:29:10
回答 2查看 41关注 0票数 0

我正在使用Power Query为财务数据追加多个查询。我试图在附加查询后添加清理步骤,但这些步骤继续使用列名而不是位置。列号每月/每年更改一次,我宁愿现在编写M代码来自动化刷新,而不是每次使用新列拉取查询并删除和重新添加步骤时都要执行。下面是我的代码,它是在我用零替换空值时自动生成的。有没有办法用索引或位置改变名字("201501")?

=Table.ReplaceValue(#“合并列”,null,"0",Replacer.ReplaceValue,{"201501","201601","201701","201801","201901","201902","201903","201904","201905","201906","201907","201908","201909","201910","201911","201912","202001","202002","202003","202004","202005","202006","202007","202008","202009","202010","202011","202012",“预算参考”})

EN

回答 2

Stack Overflow用户

发布于 2021-10-12 18:50:32

您可以尝试:

= Table.ReplaceValue(#"Merged Columns",null,0,Replacer.ReplaceValue,Table.ColumnNames(#"Merged Columns"))

票数 0
EN

Stack Overflow用户

发布于 2021-10-12 18:55:30

假设您的表列是AB101201301Z,其中只有数字列可以更改名称。

您可以使用Table.ColumnNames函数将它们作为列表返回

代码语言:javascript
复制
{ "A", "B", "101", "201", "301", "Z" }

然后筛选此列表,以仅选择要替换的列表。

代码语言:javascript
复制
= Table.ReplaceValue(
      #"Merged Columns", null, "0", Replacer.ReplaceValue, 
      List.RemoveLastN(List.RemoveFirstN(Table.ColumnNames(#"Merged Columns"), 2), 1)
  )

我选择删除前两个列名和最后一个列名。根据您的用例进行适当的调整。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69545375

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档