Sending Range of Excel in Body of Email

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • iain654
    New Member
    • Jul 2008
    • 2

    Sending Range of Excel in Body of Email

    I have finally worked out how to automatically send a range of cells in the body of an email using Outlook but it is very clumsy and I have to build up the email using the limit of line continuations. Is there any quicker and easier way of sending this email as it is always a set range of cells that I want to sent. At the moment my code looks like this:

    Code:
     
    Sub Email_DPV()
    Dim oFolder As Outlook.MAPIFolder
    Dim oItem As Outlook.MailItem
    Dim oOutlook As New Outlook.Application
    Dim MoOutlook As Outlook.Namespace
    Set MoOutlook = oOutlook.GetNamespace("MAPI")
    Set oFolder = MoOutlook.GetDefaultFolder(olFolderOutbox)
    Set oItem = oFolder.Items.Add(olMailItem)
    Sheets("Summary").Range("AE3").Font.Bold = True
    With oItem
        .Recipients.Add ("iain.dykes@ocado.com")
        .Subject = "Next Day AM/PM Balance"
        .Body = Sheets("Summary").Range("AE3") & vbNewLine & _
        Sheets("Summary").Range("AD4") & Sheets("Summary").Range("AE4") & vbNewLine & _
        Sheets("Summary").Range("AD5") & "            " & Round(Sheets("Summary").Range("AE5"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD6") & "      " & Round(Sheets("Summary").Range("AE6"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD7") & "         " & Round(Sheets("Summary").Range("AE7"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD8") & "          " & Round(Sheets("Summary").Range("AE8"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD9") & "     " & Round(Sheets("Summary").Range("AE9"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD10") & "  " & Round(Sheets("Summary").Range("AE10"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD11") & "              " & Round(Sheets("Summary").Range("AE11"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD13") & Sheets("Summary").Range("AE13") & vbNewLine & _
        Sheets("Summary").Range("AD14") & "          " & Round(Sheets("Summary").Range("AE14"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD15") & "     " & Round(Sheets("Summary").Range("AE15"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD16") & "        " & Round(Sheets("Summary").Range("AE16"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD17") & "         " & Round(Sheets("Summary").Range("AE17"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD18") & "    " & Round(Sheets("Summary").Range("AE18"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD19") & "  " & Round(Sheets("Summary").Range("AE19"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD20") & "              " & Round(Sheets("Summary").Range("AE20"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD22") & Sheets("Summary").Range("AE22") & vbNewLine & _
        Sheets("Summary").Range("AD23") & "          " & Round(Sheets("Summary").Range("AE23"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD24") & "     " & Round(Sheets("Summary").Range("AE24"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD25") & "        " & Round(Sheets("Summary").Range("AE25"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD26") & "         " & Round(Sheets("Summary").Range("AE26"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD27") & "    " & Round(Sheets("Summary").Range("AE27"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD28") & "  " & Round(Sheets("Summary").Range("AE28"), 0) & vbNewLine & _
        Sheets("Summary").Range("AD29") & "              " & Round(Sheets("Summary").Range("AE29"), 0)
        .Importance = olImportanceNormal
        .Send
    End With
    Set oItem = Nothing
    Set oFolder = Nothing
    End Sub
    If anyone has any suggestions then they would be very gratefully received.

    Thanks.
Working...