Vba 脚本没有';不存在或无效
我在stack overflow上找到了这段代码,我正试图用它打开Internet Explorer,在电子邮件中有一个来自特定地址的链接(我为此创建了一个规则) 当我尝试运行它时,我收到以下错误:“脚本不存在或无效。”。我正在使用Microsoft Outlook 2010Vba 脚本没有';不存在或无效,vba,outlook,Vba,Outlook,我在stack overflow上找到了这段代码,我正试图用它打开Internet Explorer,在电子邮件中有一个来自特定地址的链接(我为此创建了一个规则) 当我尝试运行它时,我收到以下错误:“脚本不存在或无效。”。我正在使用Microsoft Outlook 2010 Sub LaunchURL(itm As MailItem) Dim bodyString As String Dim bodyStringSplitLine Dim bodyStringSpli
Sub LaunchURL(itm As MailItem)
Dim bodyString As String
Dim bodyStringSplitLine
Dim bodyStringSplitWord
Dim splitLine
Dim splitWord
bodyString = itm.Body
bodyStringSplitLine = Split(bodyString, vbCrLf)
For Each splitLine In bodyStringSplitLine
bodyStringSplitWord = Split(splitLine, " ")
For Each splitWord In bodyStringSplitWord
If Left(splitWord, 7) = "http://" Then
Shell ("C:\Program Files (x86)\Internet Explorer\iexplore.exe" & " " & splitWord)
End If
Next
Next
Set itm = Nothing
End Sub
Private Sub test()
Dim currItem As MailItem
Set currItem = ActiveInspector.CurrentItem
LaunchURL currItem
End Sub
首先,剧本是错误的。您尝试在web浏览器中打开邮件正文中的每个单词。你需要找到一个真正的URL 您需要使用Outlook项的属性来获取表示指定项的HTML正文的字符串。然后,您可以查找Document类的
属性,该属性返回表示指定文档中所有超链接的超链接集合。例如:
For Each aHyperlink In document.Hyperlinks
If InStr(LCase(aHyperlink.Address), "microsoft") <> 0 Then
MsgBox aHyperlink.Name
End If
Next aHyperlink
用于文档中的每个超链接。超链接
如果InStr(LCase(aHyperlink.Address),“microsoft”)为0,则
MsgBox aHyperlink.Name
如果结束
下一个超级链接
有关更多信息,请参阅
无需指定机器上IE的路径。例如,您可以使用以下代码:
Shell(splitWord)
将打开默认的web浏览器。此外,IE的路径可能错误,并且取决于机器(x86或x64)
最后,您可能会发现这篇文章很有帮助。我已经试用了这段代码,没有发现任何问题。窗户开了。请确保您的项目名称有效。此外,请尝试删除该规则,然后重命名项目,然后将该规则添加回。另外,from:“注意:已知使用此技术会导致VBA代码损坏。请确保导出代码模块或备份VBAProject.otm文件。”