首页 > 解决方案 > Power Query:返回自我(此)查询名称

问题描述

我正在寻找一种方法让查询在查询本身中引用自己的名称。据我所知,这没有本机功能,所以你必须有点棘手。经过大量挖掘后,我想我会分享我在这里找到的 Bagration.555 的解决方案。

标签: excelthispowerqueryself

解决方案


这里的关键是最后一步是所有使用此结构的查询的单个值(在这种情况下,0 由resstep 定义)。结果是该self_name步骤返回查询的名称。

  • __Id__可以是任何字段名
  • 555可以是任何静态
  • res 可以是任何静态
let
    queries = Record.ToTable( #sections[Section1] ),
    select_marked = Table.SelectRows( queries, each Text.StartsWith( [Name], "YOUR_PREFIX")),
    choose_self = Table.AddColumn( select_marked, "__Id__", each try if Record.HasFields( Value.Metadata([Value]), "__Id__") then null else [Name] otherwise [Name] ),
    self_name = List.RemoveNulls(choose_self[__Id__]){0},
    res = 0 meta [__Id__ = 555]
in
    res

推荐阅读