【问题标题】:Power Query Source Item Not Case SensitivePower Query 源项目不区分大小写
【发布时间】:2021-01-22 03:45:00
【问题描述】:

是否可以让 Power Query source 语句区分大小写?

例如,我在一个文件夹中有 10 个 excel 文件需要导入到我的数据模型中;在名为 DetailDETAIL 的工作表中包含所需的数据。

我正在使用以下语句来引用工作表,但需要对其进行修改,以便查询对两个名称都有效:

= Source{[Item="DETAIL",Kind="Sheet"]}[Data]

可以这样做吗?

【问题讨论】:

    标签: excel powerquery


    【解决方案1】:

    这会将DETAIL 转换为小写,使其不敏感。

    let
        InsensitiveSource = Table.TransformColumns(
            Source,
            {
                {"Item", Text.Lower, type text},
                {"Kind", Text.Lower, type text}
            }
        ),
        FinalTable = InsensitiveSource{[Item = "detail", Kind = "sheet"]}[Data]
    in
        FinalTable
    

    对于其他区分大小写的 Power Query 函数,您可以使用参数 Comparer.OrdinalIgnoreCase 切换它

    【讨论】:

    • 这就是解决方案。谢谢你。实际上你应该在第一步之后将其作为Transform Sample File中的一个查询步骤,命名为Source:=Table.TransformColumns(Source,{{"Item", Text.Lower, type text},{"Kind", Text.Lower, type text}})
    【解决方案2】:

    通常的格式是 = try xxx else yyy 所以这应该适合你

      = try Source{[Item="DETAIL",Kind="Sheet"]}[Data] otherwise Source{[Item="Detail",Kind="Sheet"]}[Data] 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-19
      • 1970-01-01
      • 2011-11-23
      • 1970-01-01
      • 1970-01-01
      • 2012-12-01
      • 2013-03-06
      • 2020-02-18
      相关资源
      最近更新 更多