使用win32com更新链接,其中excel与多个源链接



我正在使用win32com.client打开带有的Excel

excel = win32com.client.Dispatch("Excel.Application")
workbook = excel.Workbooks.Open(filename,UpdateLinks=False, ReadOnly=True)

有时这会生成带有以下文本的警报:

"此工作簿包含一个或多个无法更新"amp;选项是:";"继续";,以及";编辑链接"(。

这会停止脚本,直到我手动处理对话框,这不是首选。

我想继续,好像";继续";曾经点击,或者压制整个对话框,我找不到这样做的方法。

在Stackoverflow论坛上搜索,我看到了以下建议:

excel.DisplayAlerts = False
excel.AskToUpdateLinks = False

我已经尝试了其中的每一个(在excel变量为分配(并且两者都不单独或一起具有期望的效果。

正如在其他论坛上所建议的那样,我也尝试过打开excel&保存&然后再次使用python重新打开,python也不起作用。

wb = xlApp.Workbooks.Open(Path to file,UpdateLinks = False)
ws = wb.Worksheets('XYZ')
wb.Close(SaveChanges=1)
excel.Visible = False
excel.ScreenUpdating = False 
excel.DisplayAlerts = False
excel.AskToUpdateLinks = False
wb = xlApp.Workbooks.Open(Path to file)
ws = wb.Worksheets('XYZ')

有人知道有效的解决方案吗?任何事情都会起作用,要么断开链接,要么继续。提前感谢

excel.AskToUpdateLinks = False

据我所知,上面关闭了提示,并在文件打开时自动更新外部链接。尝试使用以下内容:

excel = win32com.client.Dispatch("Excel.Application")
excel.DisplayAlerts = False
workbook = excel.Workbooks.Open(Path to file,UpdateLinks=0)

最新更新