我生成了指向约100个工作簿的链接,但并非全部都存在。很好,因为如果它们不存在,通常意味着我不需要它。链接是基于字符串连接生成的,最后一步是按值将其粘贴到单元格中。链接示例可能像这样"='P:\TEMP\[wb1.xlsx]sheet1'!$D$1
我现在需要的是删除第一个引号以使链接“生效”。
我写了一个宏,可以在行中进行查找和替换
Sub BringAlive()
Rows("18").Select
Selection.Replace What:="""", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub
唯一的问题是,当工作簿不存在时,会弹出一个窗口,要求我查找工作簿。我需要多次按下ESC,直到代码执行完成。我不能只按住ESC,因为它将停止代码。
击中ESC是否有更好的解决方案?
谢谢。
答案 0 :(得分:1)
您可以尝试关闭代码(或其中一部分)的警报
Sub BringAlive ()
Application.DisplayAlerts = False
'Your code here
Application.DisplayAlerts = True
End Sub
此外,您应该避免使用.Select
方法。 (see here for more info)
Rows("18").Replace What:="""", Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False