Power Query中合并文本文件与现有采购订单表并实现刷新复用
解决Power Query刷新后自动更新原有采购订单表格的问题
核心逻辑
以每周新到的未结PO文本文件为数据源基准,关联原有注释数据,设置查询直接覆盖原有工作表,从根源避免生成新表或空值问题。
具体操作步骤
提取独立的注释查询
把现有Excel表格里的「订单号+注释」列单独做成仅保留连接的Power Query查询:- 选中现有表中订单号和注释的列区域
- 点击「数据」选项卡 → 「从表格/区域」
- 在弹出的加载窗口选择「仅创建连接」,可勾选「添加到数据模型」方便后续关联,将该查询命名为
PO_Comments
构建主查询并设置覆盖加载
处理新文本文件并关联注释,最终直接覆盖原有工作表:- 导入每周的未结PO文本文件为查询,命名为
Current_Open_POs - 在Power Query编辑器中,将
Current_Open_POs与PO_Comments做左连接(匹配键选订单号),这样只会保留新文件里的当前未结PO,同时带出已有注释,新PO的注释列留空即可后续手动添加 - 完成编辑后,点击「关闭并上载至」,选择「覆盖现有工作表」,指定你原来存放采购订单的目标工作表。此后每次刷新,Power Query会直接替换该工作表的数据,不会生成新表
- 导入每周的未结PO文本文件为查询,命名为
确保新添加的注释能持久化
手动给新PO添加的注释需要被注释查询捕获:- 右键原有工作表的表格 → 「表格设计」 → 勾选「包含在刷新中」
- 每次手动添加完新注释后,先刷新
PO_Comments查询,再刷新Current_Open_POs查询,新注释就会被保留到下一次更新
关于右连接空值的说明
右连接以原有表格为基准,会保留原有表格里已结单但新文件里没有的PO记录,这些记录在新文件的字段里自然是空值。所以必须以新文本文件的有效未结PO为基准做左连接,才能避免无效空值。
内容的提问来源于stack exchange,提问作者Jonathan Davis
相关产品推荐
相关产品推荐

