通过python在excel中处理对话框

时间:2014-12-01 10:31:26

标签: python excel automation win32com

我正在使用excel文件中的python自动执行某些活动,以便在excel中插入一些数据。我正在尝试在执行所需操作后保存excel文件,但会出现一个对话框,其中包含需要用户注意的选项(“是”或“否”)。 我的脚本应该从python中选择对话框的“是”选项。

但是,无法找到合适的方法。

请有人给出建议来解决这个问题。

谢谢,

2 个答案:

答案 0 :(得分:2)

我猜你正在使用libiary pywin32。几个星期前我也对此感到困惑。这里有一些最终有效的示例代码。

import win32com.client
xl = win32com.client.DispatchEx("Excel.Application")
wb = xl.workbooks.open(SourceFile)  # Open a workbook

# Your code to modify the excel file.
wb.RefreshAll()

# Call wb.Save() to save your changes.
wb.Save()
xl.Quit()

方法wb.Save()将避开对话框。

您还可以使用SaveAs功能将文件保存在新目标中。如下所示。

wb.SaveAs('another_workbook.xlsx')

查找有关此blog的更多信息。

更多提示:有时当我找不到pywin32的示例代码来运行excel时,我能够找到解决方案VBA脚本的文档。您可以在必要时尝试此操作。

答案 1 :(得分:0)

如果您使用的是pywin32。您只需使用参数' True'关闭工作簿即可。保存它而不询问是否需要

wb.Close(True)