2017-05-26 207 views
1

我有一个表格,列数组为A1,A2,A3,A4,...和一个索引列Ind,其值为1,2,3,4 ...我想要创建一个使用索引返回数组元素的列。我可以做一个嵌套如果Power Query中的数组处理

 if Ind = 1 then A1 
else if Ind = 2 then A2 
else if Ind = 3 then A3 
else if Ind = 3 then A4 ... 

有没有更优雅的方式?

回答

1

A1,A2等是A列中的值吗?如果是这样,添加公式为each [A]的自定义列将做你想要的。如果您需要从另一行获取值,则可以使用{}获取索引处的值,如TableName[A]{Ind + 1}。您必须确保您使用的索引不低于0或大于或等于行数。您可以使用if/else语句来保持索引有界。

+0

谢谢亚历杭德罗。我的意思是,A1,A2等是一个sql数据库的独立列,它们只是一个隐式数组。我可以将它们转换为A = {A1,A2,A3,...}的列表,然后使用一个索引,但我想我从根本上想要做的是以某种方式直接利用列的名称。 –

+0

名称是否遵循一种模式?添加自定义列时,可以使用“Record.Field”从列中获取值。例如,如果基本名称是“A”,则可以用'Record.Field(_,“A”和Number.ToText(Ind))''来获得列A(Ind)的值。 –

+0

这工作 - 正是我想要的,谢谢! –