绕过旧的超链接错误



我有以下问题:

我有一个用于 excel 的宏脚本,它正在运行 300 多个 excel 工作簿,其中包含几张纸。问题是其中一些工作表具有错误的超链接,每次我运行宏时,都会弹出消息通知我工作表中找到的超链接不起作用,我每次都必须单击 , : ,,取消'' .有没有一种方法(代码)我可以编写自动取消弹出问题,如果它出现?

您应该能够通过将代码包装在:

Application.DisplayAlerts = False
-- your code --
Application.DisplayAlerts = True

也许隐私选项是相关的?http://office.microsoft.com/en-001/excel-help/enable-or-disable-security-alerts-about-links-to-and-files-from-suspicious-web-sites-HA010039898.aspx

假设您的超链接指向工作表的单元格,并且该工作表可能不再存在,最好的办法可能是简单地删除这些超链接。

这是

你这样做的方式:

Sub RemoveDeadHyperlinks()
    For Each hyperL In ActiveSheet.Hyperlinks
        'Extract name of the sheet from the subaddress
        toSheet = Left(hyperL.SubAddress, InStr(hyperL.SubAddress, "!") - 1)
        If WorksheetExists(toSheet) Then
            'Most likely a valid hyperlink!
        Else
            'Most likely a dead one!
            hyperL.Delete
        End If
    Next
End Sub
Public Function WorksheetExists(ByVal WorksheetName As String) As Boolean
    On Error Resume Next
    WorksheetExists = (Sheets(WorksheetName).Name <> "")
    On Error GoTo 0
End Function

最新更新