我们当前正在将当前的产品站点转换为新站点,并且我需要进行一些错误处理,以便说如果超链接在新站点上返回错误,请在旧站点上查找它。我遇到的问题是我目前正在尝试打开2个单独的页面。逻辑将是:
在任何一种情况下,用户浏览器中只会打开2个标签。在我当前的VBA中,它实际上打开了3个选项卡,我认为我的逻辑不正确。
Private Sub ClosestSKU_DblClick(Cancel As Integer)
On Error GoTo Error_Old
Access.FollowHyperlink "https://www.oursite.com/newstorefront/c/p/" & [OldSKU], , True
Error_Old:
Access.FollowHyperlink "https://www.oursite.com/oldstorefront/search/?text=" & [OldSKU], , True
On Error GoTo Error_New
Access.FollowHyperlink "https://www.oursite.com/newstorefront/c/p/" & [ClosestSKU], , True
Error_New:
Access.FollowHyperlink "https://www.oursite.com/oldstorefront/search/?text=" & [ClosestSKU], , True
End Sub
任何人都能提供的帮助/建议将不胜感激。
谢谢!
答案 0 :(得分:1)
您必须确保错误处理程序不在程序的范围之内。有多种方法可以做到这一点。如果您不想移动它们,可以将它们包装在If False Then
中,以确保仅在发生错误时才触发它们。
Private Sub ClosestSKU_DblClick(Cancel As Integer)
On Error GoTo Error_Old
Access.FollowHyperlink "https://www.oursite.com/newstorefront/c/p/" & [OldSKU], , True
If False Then
Error_Old:
Access.FollowHyperlink "https://www.oursite.com/oldstorefront/search/?text=" & [OldSKU], , True
End If
On Error GoTo Error_New
Access.FollowHyperlink "https://www.oursite.com/newstorefront/c/p/" & [ClosestSKU], , True
If False Then
Error_New:
Access.FollowHyperlink "https://www.oursite.com/oldstorefront/search/?text=" & [ClosestSKU], , True
End If
End Sub