如何使用宏删除Outlook中指定的几行电子邮件?

时间:2015-03-24 12:13:32

标签: html vba vbscript outlook

我想在“text / html”格式的电子邮件中添加一个唯一标记,例如“<>”

仅限唯一标记“<>”下面的内容将被保留在其上方,所有内容都将被删除。

由于html与plain不同,我尝试使用replace作为删除功能,但没有运气。

是否有人可以帮助找出可以帮助实现这一目标的脚本?无论如何可以删除Outlook出站电子邮件中的某些行,比如删除一个出站电子邮件的前3行?

非常感谢你!

1 个答案:

答案 0 :(得分:0)

您可以尝试对隐藏文字使用<!-- -->标记(评论)。

Outlook对象模型提供了以下修改实体的方法:

  1. Body
  2. HTMLBody
  3. Word编辑器。 Inspector类的WordEditor属性从表示邮件正文的Word对象模型返回Document类的实例。
  4. 您可以在Chapter 17: Working with Item Bodies文章中详细了解所有这些方法。

    Outlook对象模型中的应用程序提供ItemSend事件,当用户通过Inspector发送Microsoft Outlook项目时(在检查器关闭之前,但在用户单击发送之后)按钮)或在程序中使用Outlook项目的Send方法(如MailItem)时。

     Public WithEvents myOlApp As Outlook.Application 
    
     Public Sub Initialize_handler() 
        Set myOlApp = Outlook.Application  
     End Sub 
    
     Private Sub myOlApp_ItemSend(ByVal Item As Object, Cancel As Boolean)  
       Dim prompt As String  
       prompt = "Are you sure you want to send " & Item.Subject & "?"  
       If MsgBox(prompt, vbYesNo + vbQuestion, "Sample") = vbNo Then  
         Cancel = True  
       End If  
     End Sub
    

    因此,您可以根据需要修改项目并取消进一步处理该项目。