【问题标题】:How to refer columns in Power Query by index or position?如何按索引或位置引用 Power Query 中的列?
【发布时间】:2018-05-01 08:19:35
【问题描述】:

我在 Power Query 中有如下一行。因此,我不是按名称引用它,而是动态地按位置引用它。有人可以帮忙吗,拜托

#"Filtered Part Desc" = Table.SelectRows(#"Removed Columns3", each
                            Text.Contains([part_desc], "ENG") or
                            Text.Contains([part_desc], "TRANS"))

我尝试用Table.ColumnNames(Promoted){6} 替换[part_desc],但它不起作用

【问题讨论】:

  • 你能解释一下你想要做什么的逻辑吗?我不明白你的预期目标是什么。

标签: excel powerquery


【解决方案1】:

您可以使用 Table.ColumnNames(MyTable){n} 按位置返回列名 - 这是基数 0,因此第 6 个列名将是 Table.ColumnNames(MyTable){5}

然后,您可以使用 Record.Field 按名称引用列。

您还可以按列表进行过滤,而不是将条件与or 运算符一起使用。

因此,将这些放在一起作为您的示例:

    #"Filtered Part Desc" = Table.SelectRows ( 
        #"Removed Columns3", 
        each List.Contains(
            {"ENG","TRANS"}, 
            Record.Field(_, Table.ColumnNames(#"Removed Columns3"){5})
        )
    )

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-14
    相关资源
    最近更新 更多