Excel ChangeLink停止打开目标电子表格

时间:2018-06-15 17:44:07

标签: .net excel-interop

我在.NET应用程序中使用Excel Interop来更新损坏的Excel链接(指向其他电子表格的链接)。我需要在后台针对大量文件运行它。

objWorkbook.ChangeLink(currentLinkName, newLinkName)

适用于大多数情况。但是,如果newLinkName是受密码保护的电子表格,Excel将弹出一个要求输入密码的窗口。这告诉我Excel正在尝试打开它。我可以点击取消,链接在源文件中成功更新,但是,它会破坏我的后台处理。

有没有办法告诉Excel“不要试图打开我链接到的电子表格”?

非常感谢提前!

1 个答案:

答案 0 :(得分:0)

我从来没有找到答案,只有解决方法。最后,我将AutoIt与一个脚本一起使用,该脚本可以一遍又一遍地取消弹出的“密码”对话框。

脚本:

Do
   WinWait("Password")
   WinActivate("Password")
   WinWaitActive("Password", "", 5)
   Send("{TAB}{ENTER}")
   Sleep(1000)
Until 1 = 2

希望它可以帮助某人。