Outlook电子邮件中的文本框

时间:2017-05-18 17:34:34

标签: vba outlook word-vba outlook-vba

下面是两组删除文本框的VBA代码,第一组用于MS Excel,第二组用于MS Word。两者之间的唯一区别是“活跃”之后的第三行。

我正在尝试在新打开的电子邮件中复制MS Outlook中的此操作,但缺乏正确的代码术语的知识...有没有人知道答案?...谢谢,

Sub RemoveTextBox()
    Dim shp As Shape
    For Each shp In ActiveSheet.Shapes
        If shp.Type = msoTextBox Then shp.Delete
    Next shp
End Sub
Sub RemoveTextBox()
    Dim shp As Shape
    For Each shp In ActiveDocument.Shapes
        If shp.Type = msoTextBox Then shp.Delete
    Next shp
End Sub

1 个答案:

答案 0 :(得分:1)

对于Outlook,它将类似于以下示例

Option Explicit
Public Sub Example()
    Dim Inspector As Outlook.Inspector
    Dim wdDoc As Word.Document
    Dim Shp As Word.Shape

    Set Inspector = Application.ActiveInspector()
    Set wdDoc = Inspector.WordEditor

    For Each Shp In wdDoc.Shapes

        Debug.Print Shp.Type 'msoTextBox = 17 - Print on Immediate Window
        If Shp.Type = msoTextBox Then Shp.Delete

    Next

End Sub

使用 Application.ActiveInspector Method (Outlook) Inspector.WordEditor Property (Outlook) 打开电子邮件

  

Inspector.WordEditor Property (Outlook) 返回正在显示的邮件的Microsoft Word文档对象模型。只读,WordEditor属性仅在IsWordMail方法返回True且EditorType属性为olEditorWord时有效。返回的WordDocument对象提供对大多数Word对象模型的访问,但以下成员除外:

           

Application.ActiveInspector Method (Outlook) 返回桌面上最顶层的 Inspector 对象。

<强> Remember to add reference to word xx object library

  

<子> 1。从“工具”菜单中,选择“引用”以显示“引用”对话框。

     

<子> 2。 “引用”对话框显示向操作系统注册的所有对象库。滚动浏览要引用其对象库的应用程序的列表。如果未列出应用程序,则可以使用“浏览”按钮搜索对象库( .olb和 .tlb)或可执行文件( .exe和Windows上的 .dll)。检查复选框的引用将由您的项目使用;那些未经过检查的人不会被使用,但可以添加。