我有以下问题:
我有一个用于 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