Wednesday, January 9, 2013

Macro to send Chart in Outlook Mail body

If you want to send chart automatically in the body of outlook . Try this macro-





Sub sample_macro()

    Dim olMail As MailItem
    Dim objOL As Object
    Dim chrtpth As String
    Dim bdy As String
    Dim startmsg As String
    Dim endmsg As String
    
    ' create a unique Name
    chrtpth = ThisWorkbook.Path & "\" & Environ("USERNAME") & VBA.Format(VBA.Now(), "DD_MM_YY_HH_MM_SS") & ".bmp"
    'Change chart name which you want to export
    Sheets("Sheet1").ChartObjects("Chart 3").Chart.Export chrtpth
    
    ' add the mail content and chart to the outlook mail body
    
    bdy = "<p align='Left'><img src=""cid:" & Mid(chrtpth, InStrRev(chrtpth, "\") + 1) & """  width=700 height=500 > <br> <br>"
    startmsg = "<font size='5' color='black'> Hi Ashish," & "<br> <br>" & "Please find the chart below: " & "<br> <br> </font>"
    endmsg = "<font size='4' color='black'> Many Thanks," & "<br>" & "Ashish Koul" & "<br> <br> </font>"
    
    
    ' send the email
    
    Set objOL = CreateObject("Outlook.Application")
    Set olMail = objOL.CreateItem(olMailItem)
    
    With olMail
        .To = "koul.ashish@gmail.com"
        .Subject = "Add Chart in outlook mail body"
        .Attachments.Add chrtpth
        .HTMLBody = startmsg & bdy & endmsg
        .Display
    End With
    
    ' delete the exported chart
    Kill chrtpth
    
    Set olMail = Nothing
    Set olApp = Nothing

End Sub







Download Working File






6 comments:

  1. Hi Ashish,

    This is cool. Can you also publish a simlillar code to send a ranges as image using outlook.

    Thanks
    Rajesh

    ReplyDelete
  2. Replies
    1. dongtam
      game mu
      http://nhatroso.net/
      http://nhatroso.com/
      nhac san cuc manh
      tư vấn luật
      dịch vụ thành lập công ty trọn gói
      văn phòng luật
      tổng đài tư vấn pháp luật
      thành lập công ty
      http://we-cooking.com/
      chém gió
      trung tâm ngoại ngữ

      Lang Lễ nói.

      Lang Lễ ôm lấy Nhạc Thành, nhất thời mọi người biến mất ngay tại chỗ không thấy đâu nữa.

      Một lát sau, giữa không trung lục tục có hơn mười đạo thân ảnh, nơi này động tĩnh thật lớn đã sớm làm kinh động người của Tiên Ma rồi.

      Mọi người tại chung quanh tìm tòi một lát chỉ thấy được một đống hỗn độn, chắc là do có cường giả đại chiến, một ít người có tu vi thấp cũng không dám chọc tới phiền toái, sau đó vội vàng rời đi.

      Mà lúc này Nhạc Thành cũng ở một chỗ sơn động hai ngày mới tỉnh lại, cảm giác pháp lực trong cơ thể không khỏi cười khổ, hắn cũng không nghĩ tới thần thông kia uy lực thật là lớn, nhưng tiêu hao cũng quá dọa người, nếu đối chiến, cho dù chính mình đánh chết đối thủ, chỉ sợ cũng không tốt.

      - Lão ba, người đã tỉnh lại.

      Thanh Đồng nhìn thấy Nhạc Thành đã tỉnh, cao hứng không thôi.

      Delete
  3. Hi,

    Can you please provide the codes to paste two charts on mail body

    ReplyDelete
  4. Thanks for this helpful blog about Outlook mail and I’m lucky to find out this blog because I always need this kind of blog. For any technical support call 0800-090-3220 or visit the website Outlook Contact Number UK

    ReplyDelete

Import data from SQL

Macro to import data from SQL using ADO connection string: Sub Import_data_from_SQL() ' Tools -> References -> Microsoft Active...