删除超链接性能

时间:2015-11-10 08:57:50

标签: excel vba excel-vba hyperlink

我想通过VBA删除当前活动工作表上的所有超链接。

为此,我使用的是ActiveSheet.Hyperlinks.Delete命令,它运行正常,几乎不需要任何时间......

所有直到我同时打开两个包含超链接的工作簿。在这种情况下,非常相同的命令需要更多的时间(分钟)来完成。它完成它的工作,仅从活动表中删除超链接,但是在更长的时间内。似乎某种方式,其他带超链接的工作表正在减慢速度。

我可以同时打开多个工作簿,但是它们必须没有任何超链接才能使宏快速工作。

有人可以帮助我克服这个问题吗?

实际上,我经常需要同时打开两个超链接工作簿并运行删除超链接的宏。

1 个答案:

答案 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

如果您隔离工作簿,则应返回正常的运行时