目标:我的目标是让 OUTLOOK 根据关键字过滤传入消息(可以通过规则完成),但我需要运行一个脚本来自动打开电子邮件中的链接。
配置:我们的后端系统有一个按钮,上面写着“需要注意”,这会发送一封电子邮件,如下所示 Outlook 2013 想要在当前页面(chrome)中作为新选项卡或在新窗口中打开,只要它打开
出于安全考虑,链接已更改
根据发帖要求删除了“HTTP:”
主题:(除客户编号外,始终包含相同的单词)
收件人 - 需要支持:LOC-12345 / 代表 ID:mike / 技术人员:jacob / 状态:新请求 / 服务:标准服务
正文(正文和超链接中始终包含相同的单词(客户编号除外))
收件人 - 需要支持:LOC-12345(客户编号)
要查看帐户,请点击以下链接://support.bo.ca/login.aspx?url=view_rfq.aspx?rfq_ID=12345
摘要:可能看起来我只是懒惰,不想点击链接。但情况是,我们有 20 多个操作,涉及 20 个不同的电子邮件主题,我有设置提醒和移动到特定文件夹的代码,但这会很棒,因为只要客户代表点击“需要注意”按钮,它就会向指定的支持小组发送电子邮件并弹出到他们的屏幕上。我们的电话系统已经实现了这一点,通过识别呼叫者 ID 并与该号码的数据库进行匹配,如果有匹配,它会自动打开客户页面。
这是我找到的代码,但我不明白如何让它工作,我想也许有一个代码可以自动生成部分超链接,提取客户 ID 并将其输入到部分超链接中并打开页面?例如,使用 SplitWord 条目从开头用部分链接替换一定数量的字符并执行它?
(部分链接)//support.bo.ca/login.aspx?url=view_rfq.aspx?rfq_ID=(客户 ID)12345 (完整链接)//support.bo.ca/login.aspx?url=view_rfq.aspx?rfq_ID=12345
Private WithEvents myOlItems As Outlook.Items
Private Sub Application_Startup() Dim olApp 作为 Outlook.Application Dim objNS 作为 Outlook.NameSpace 设置 olApp = Outlook.Application 设置 objNS = olApp.GetNamespace("MAPI") 设置 myOlItems = objNS.GetDefaultFolder(olFolderInbox).Items End Sub
Private Sub myOlItems_ItemAdd(ByVal item 作为对象)
发生错误时转到错误处理程序
昏暗消息作为 Outlook.MailItem
If TypeName(item) = "MailItem" Then
Set Msg = item
LaunchURL (item)
For Each SplitLine In bodyStringSplitLine
If InStr(SplitLine, "http://") > 0 Then
If InStr(SplitLine, "SomeSite") > 0 Then
bodyStringSplitWord = Split(SplitLine, " ")
For Each SplitWord In bodyStringSplitWord
If Left(SplitWord, 7) = "http://" Then
Shell ("C:\Program Files\Internet Explorer\IEXPLORE.EXE" & " " & SplitWord)
End If
Next
End If
End If
Next
End If
ProgramExit:
Exit Sub
ErrorHandler:
MsgBox Err.Number & " - " & Err.Description
Resume ProgramExit
End Sub
感谢 Jacob 的任何反馈