首页 > 解决方案 > Power Query - Table.TransformColumns

问题描述

我正在尝试将前导零添加到电源查询调用 JobCodes 的列中。我知道我可以通过使用 添加新列来做到这一点Text.Start([JobCodes],5,"0"),但我不想添加新列并返回删除我不需要的列。我希望能够使用Table.TransformColumns功能一步完成。这可能吗?

代码:

Table.TransformColumns(#"Changed Type", each Text.PadStart([JobCodes],5,"0"))

错误:

Expression.Error:我们无法将 Function 类型的值转换为 List 类型。详细信息:值=函数类型=类型

标签: powerbipowerquerym

解决方案


你的语法有点不对劲。

我认为这就是你想要的:

= Table.TransformColumns(#"Changed Type",{{"JobCodes", each Text.PadStart(_, 5,"0")}})

该错误是因为它需要一个您要转换的列列表(请注意{{...}}上面的内容。


获得正确语法的最简单方法是使用 GUI 进行转换,然后稍微编辑函数。例如,您可以使用 Format > Add Prefix 这将为您提供以下步骤(假设您选择 prefix 000)。

= Table.TransformColumns(#"Changed Type", {{"JobCodes", each "000" & _, type text}})

只需取出"000" & _并放入您真正想要的转换即可。


推荐阅读