-1

このグラフを電子メールの添付ファイルにするのを手伝ってくれた仲間の Stack Overflow ユーザーに感謝します。大変感謝しております。私が持っている次のステップは、画像またはコピーとしてメールの実際の本文に入れようとすることです. 添付ファイルは機能しますが、メール以外に何も開く必要がなく、本文に添付した方がプレゼンテーションははるかに優れています。誰にもアドバイスはありますか?ロータスでこれをやろうとしても、良いことはあまり聞いたことがありません。

Sub SendEmail()
  ' setting up various objects
    Dim Maildb As Object
    Dim UserName As String
    Dim MailDbName As String
    Dim MailDoc As Object
    Dim Session As Object
    Dim recipient As String
    Dim ccRecipient As String
    Dim bccRecipient As String
    Dim subject As String
    Dim bodytext As String
    Dim User As String
    Dim Fname As String




    User = Application.UserName

     ' setting up all sending recipients
    recipient = "Someonelse@somewhereelse"
     'ccRecipient =Someoneelse@Somewhereelse.com
     'bccRecipient = ""
    subject = "Week-To-Date GM%"
    bodytext = "" & vbLf & _
               "" & vbLf & _
               "Here is a breakdown of your total GM% for this week.  The graph gives you the GM% by day, with the WTD% displayed as " & vbLf & _
               "individual points on the graph.  We will continue to develop this report for you to provide you with better information."




     ' creating a notes session
    Set Session = CreateObject("Notes.NotesSession")
    UserName = Session.UserName
    MailDbName = Left$(UserName, 1) & Right$(UserName, (Len(UserName) - InStr(1, UserName, " "))) & ".nsf"
    Set Maildb = Session.GETDATABASE("", MailDbName)

    If Maildb.IsOpen <> True Then
        On Error Resume Next
        Maildb.OPENMAIL
    End If

    Set MailDoc = Maildb.CreateDocument
    MailDoc.Form = "Memo"

    Fname = Environ$("temp") & "\GM1%.jpeg"

    Sheets("Chart").Shapes("Chart 2").Chart.Export Filename:=Fname, FilterName:="JPEG"

     ' loading the lotus notes e-mail with the inputed data
    With MailDoc
        .SendTo = recipient
         '.copyto = ccRecipient
         '.blindcopyto = bccRecipient
        .subject = subject
        .Attachment.Add Fname
        .Body = bodytext
    End With


     ' saving message (Change to True if you want to save it)
    MailDoc.SaveMessageOnSend = False

       Attachment1 = Worksheets("Chart").Shapes("Chart 2").ChartArea

     ' send e-mail
    MailDoc.PostedDate = Now()
     ' if error in attachment or name of recipients

        Dim rtitem As Object
        Dim object As Object

        Set rtitem = MailDoc.CreateRichTextItem("Attachment1")
        Set object = rtitem.EmbedObject(1454, "", Fname)

    MailDoc.Send 0, recipient

    Kill (Fname)

    Set Maildb = Nothing
    Set MailDoc = Nothing
    Set attachMe = Nothing
    Set Session = Nothing
    Set EmbedObj1 = Nothing

     'Unload Me
    Exit Sub
End Sub
4

1 に答える 1

2

添付ファイルではなくオブジェクトを埋め込むには、1454から1453に変更する必要があると思います。

ただし、本文に含めるには、リッチテキストアイテムを作成する行を次のように変更します。

Set rtitem = MailDoc.CreateRichTextItem("Body")

また、メールの本文にテキストを追加する必要がある場合は、

rtitem.AppendText("text")
于 2013-02-02T00:24:10.653 に答える