2015-09-09 133 views
2

我使用以下代码从Microsoft Word复制文本和图像并粘贴到Outlook电子邮件的正文。我试图排除前4行被复制(此代码正在复制文档中的所有内容)。我怎么能这样做呢?从第4行开始选择Word VBA

Sub CopycontentintoOutlook() 

Dim oMailItem As Object 
Dim oWordApp As Object 
Dim oWordDoc As Object 
Dim oMailWordDoc As Object 

Set oWordApp = CreateObject("Word.Application") 
Set oWordDoc = ActiveDocument 

oWordDoc.Content.Copy 

Set oMailApp = CreateObject("Outlook.Application") 
Set oMailItem = oMailApp.CreateItem(0) 

With oMailItem 
.To = "email" 
.Subject = "This email contains Word-formatted text" 
.Display 
End With 

Set oMailWordDoc = oMailApp.ActiveInspector.WordEditor 

oMailWordDoc.Application.Selection.Paste 

End Sub 

我也想知道是否可以使用第一行的文本并将其设置为电子邮件主题?

回答

2

可以使用GoTo()函数和wdGoToLine值将插入点设置为特定行。从那里,MoveEnd()函数可以将选择的结尾设置为文档的末尾。

' Set start to line 4... 
Selection.GoTo What:=wdGoToLine, Which:=wdGoToAbsolute, Count:=4 

' Select up to end of document... 
Selection.MoveEnd Unit:=wdStory