2017-07-26 32 views
1

仅在部分拉正如你可以从代码(在Word 2016文档绑一个命令按钮),看到我现在所拥有的,命令按钮将:使用.body = ActiveDocument。在Word文档

  1. 启动/显示电子邮件
  2. (通过。体= ActiveDocument.Content)将所有的文件内容的电子邮件正文
  3. 附加的Word文档

问:有没有办法只能在部分拉文件内容进入正文?基本上,我有一张将由员工填写的表格。在表格之后(下面),有一些关于如何填写表格,一些定义和其他管理信息的说明,我宁愿不把它们放在电子邮件的正文中。

当前代码:

Dim OL As Object 
Dim EmailItem As Object 
Dim Doc As Object 

Application.ScreenUpdating = False 

Set OL = CreateObject("Outlook.Application") 
Set EmailItem = OL.CreateItem(olMailItem) 
Set Doc = ActiveDocument 

Doc.Save 

With EmailItem 
    .Subject = "test subject line" 
    .Body = ActiveDocument.Content 
    .To = "[email protected]" 
    .Importance = olImportanceNormal 
    .Attachments.Add Doc.FullName 
    .Display 
End With 

Application.ScreenUpdating = True 

Set Doc = Nothing 
Set OL = Nothing 
Set EmailItem = Nothing 

回答

0

.Body属性包含字符串。 ActiveDocument.Content是一个包含整个文档的字符串。从技术上讲,文档的任何较小部分也是一个字符串。因此,您可以选择文档的任何部分并将其分配给.Body属性。 此链接可能会帮助您选择您希望包含在电子邮件中的文档部分。 VBA to copy text from excel to on specific location in wordfile 使用的代码是

Dim Rng As Range 
Dim Excerpt As String 

' Find the range with guidance from the above link 
Excerpt = Rng.Text 
EmailItem.Body = Excerpt