VBA代码发送电子邮件正文中的工作表

问题描述:

有什么方法可以附加以及发送特定工作表作为电子邮件正文。VBA代码发送电子邮件正文中的工作表

我正在使用下面的vba,但这只能帮助发送工作表作为附件。你能否建议一些我可以发送电子邮件正文的工作表。

谢谢! RAIC

Sub Email() 
Dim OutApp As Object 
Dim OutMail As Object 
Dim wbTemp As Workbook 
Dim strFilename As String 
Dim Sendrng As Range 

ThisWorkbook.Worksheets("Test Worksheet").Copy 


Set wbTemp = ActiveWorkbook 


wbTemp.SaveAs ThisWorkbook.Path & "/" & "TestWb", XlFileFormat.xlOpenXMLWorkbook 

strFilename = wbTemp.FullName 


Set OutApp = CreateObject("Outlook.Application") 
Set OutMail = OutApp.CreateItem(0) 
On Error Resume Next 
With OutMail 
    .To = "[email protected]" 
    .CC = "" 
    .BCC = "" 
    .Subject = "Test Email" 
    .Body = "" 
    .Attachments.Add strFilename 
    .display 
End With 

末随着 对错误转到0 集发件=无 设置OutApp =无

wbTemp.Close 

Kill strFilename 

末次

+1

[这是以前的问题](http://stackoverflow.com/a/18683610/3657636),回答你在找什么。此外,[Ron de Bruin的这个网站](http://www.rondebruin.nl/win/s1/outlook/bmail2.htm)涵盖了这个话题。 – Dan

Private Sub CommandButton1_Click() 

    Dim AWorksheet As Worksheet 
    Dim Sendrng As Range 
    Dim rng As Range 

    On Error GoTo StopMacro 

    With Application 
     .ScreenUpdating = False 
     .EnableEvents = False 
    End With 

    Set Sendrng = Worksheets("Sheet1").Range("A1:g15") 

    Set AWorksheet = ActiveSheet 

    With Sendrng 
    .Parent.Select 
    Set rng = ActiveCell 
    .Select 
     ActiveWorkbook.EnvelopeVisible = True 
     With .Parent.MailEnvelope 
      With .Item 
       .To = "recipient" 
       .CC = "" 
       .BCC = "" 
       .Subject = "My subject" 
       .Send 
      End With 

     End With 
       rng.Select 
    End With 

     AWorksheet.Select 

Sheet1.Activate 
Range("c2:c3").ClearContents 
Range("e2:e3").ClearContents 
Range("c5") = "" 
Range("B8:b10").ClearContents 
Range("c8:c10").ClearContents 
Range("d8:d10").ClearContents 
Range("e8:e10").ClearContents 
Range("f8:f10").ClearContents 
Range("g8:g10").ClearContents 
Range("b13") = "" 



StopMacro: 
    With Application 
     .ScreenUpdating = True 
     .EnableEvents = True 
    End With 
    ActiveWorkbook.EnvelopeVisible = False 

End Sub 

你应该添加代码,还复制它对此。原谅你不需要在这里的所有废话,我只是复制和粘贴一个我一直在使用