在通过 Python 运行时维护 Excel 工作簿的 Power Query 连接
Posted
技术标签:
【中文标题】在通过 Python 运行时维护 Excel 工作簿的 Power Query 连接【英文标题】:Maintaining Power Query connections for Excel workbook when it's run through Python 【发布时间】:2021-03-02 20:12:48 【问题描述】:我有几个大型数据框,我将它们粘贴到预先制定的 Excel 模板工作簿中。该模板设置为在不同选项卡中的表之间有几个强大的查询连接,这些连接由 Python 的数据框填充。
在模板通过 Python 代码并将数据框粘贴到其中并保存后,工作簿不再具有电源查询连接。
对于通过 Python 运行的 Excel 文件,是否有一种维护电源查询连接的好方法?
在拉入模板的代码部分和保存模板的部分下面粘贴:
copy_to_wb = load_workbook(filename=r'C:\test\Template.xlsx', data_only=False)
diff_tab = copy_to_wb['Between-File Inconsistencies']
first_tab = copy_to_wb['First']
second_tab = copy_to_wb['Second']
copy_to_wb.save(root.save_location)
messagebox.showinfo('Complete message','Program ran successfully! Check for your new file.')
【问题讨论】:
【参考方案1】:您需要确保加载到 Excel 中的数据框被格式化为 Excel 中的表格,并且这些表格已连接到现有的 Power Query 连接。要将数据框转换为表格,请突出显示数据集并按 Ctrl + T 创建表格。然后,从功能区选项卡中,选择数据 > 从表/范围中获取数据。电源查询连接必须引用您刚刚在 Excel 中创建的表才能正常工作。
【讨论】:
以上是关于在通过 Python 运行时维护 Excel 工作簿的 Power Query 连接的主要内容,如果未能解决你的问题,请参考以下文章
通过虚拟机查看时,Excel 2003 工作簿表单控件有时会调整大小
GetElementByID() VBA Excel 不工作
通过交互式用户的 Excel COM 自动化在用户注销时停止工作