我想通过VBA删除当前活动工作表上的所有超链接。
为此,我使用的是ActiveSheet.Hyperlinks.Delete
命令,它运行正常,几乎不需要任何时间......
所有直到我同时打开两个包含超链接的工作簿。在这种情况下,非常相同的命令需要更多的时间(分钟)来完成。它完成它的工作,仅从活动表中删除超链接,但是在更长的时间内。似乎某种方式,其他带超链接的工作表正在减慢速度。
我可以同时打开多个工作簿,但是它们必须没有任何超链接才能使宏快速工作。
有人可以帮助我克服这个问题吗?
实际上,我经常需要同时打开两个超链接工作簿并运行删除超链接的宏。
答案 0 :(得分:0)
这可能不太理想,但是我会考虑启动你的代码,检查实例中是否有其他工作簿是否打开,如果它们保存了activeworkbook,打开一个新的excel实例并重新打开工作簿新实例。然后再次运行您的代码。
这样打开新实例:
Sub BlahBlah
if morethan1 then
CWb = ActiveWorkbook.name
ActiveWorkbook.save
Dim objXL
Set objXL = CreateObject("Excel.Application")
objXL.Visible = True
application.displayalerts = false
objXL.Workbooks.Open = CWb
application.displayalerts = True
end if
End Sub
如果您隔离工作簿,则应返回正常的运行时