You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Office2019中PowerQuery条件合并ANOS分组表报错求助

问题解决思路及修正代码

你的核心问题是代码里直接引用了分组ANOS本身,而没有从分组里提取对应年份的查询表,同时没处理那些报错的无效年份查询。以下是修正后的代码:

let
    currentYear = Date.Year(DateTime.LocalNow()),
    tableList = List.Transform({2011..currentYear}, each Number.ToText(_)),
    allTables = List.Transform(tableList, (yearName) => 
        try #\"ANOS\"{[Name=yearName]}[Data] otherwise Table.FromRecords({})
    ),
    combinedTable = Table.Combine(allTables)
in
    combinedTable

关键修正点:

  • 把原代码中固定引用#\"ANOS\"改成带参数的遍历逻辑:(yearName) => ...,这样能针对每个年份去分组里找对应的查询
  • 使用#\"ANOS\"{[Name=yearName]}[Data]精准定位分组中名称匹配的查询数据
  • 加入try...otherwise Table.FromRecords({}),遇到不存在或报错的年份查询时返回空表,避免合并过程中断

额外注意事项:

  • 确保ANOS分组内的查询名称和tableList里的年份文本完全一致(比如都是"2011"、"2012"这类字符串)
  • 如果分组内的查询名称是数字格式(而非文本),可以去掉Number.ToText(_),直接用数字列表{2011..currentYear},然后代码里的yearName对应数字即可

内容的提问来源于stack exchange,提问作者Cooper

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 10:13:15