Правильно. Я пытаюсь отправить электронное письмо из таблицы Excel, хотя в лотосных заметках есть вложение, а тело должно быть в формате HTML.
У меня есть некоторый код, который из всего, что я прочитал, должен позволять мне делать это, но это не так.
Без тела HTML, которое будет отправлять вложение, когда я добавляю тело HTML, которое электронная почта все еще отправляет, но вложение исчезает, я попытался изменить порядок кода, вырезая биты, которые могут быть не нужны, но все равно.
(Вам нужно обратиться к объектам Lotus Domino для запуска этого кода.
strEmail это адреса электронной почты
strAttach - строка расположения вложения.
strSubject является темой текста
strBody - основной текст
)
Sub Send_Lotus_Email(strEmail, strAttach, strSubject, strBody)
Dim noSession As Object, noDatabase As Object, noDocument As Object
Dim obAttachment As Object, EmbedObject As Object
Const EMBED_ATTACHMENT As Long = 1454
Set noSession = CreateObject("Notes.NotesSession")
Set noDatabase = noSession.GETDATABASE("", "")
'If Lotus Notes is not open then open the mail-part of it.
If noDatabase.IsOpen = False Then noDatabase.OPENMAIL
'Create the e-mail and the attachment.
Set noDocument = noDatabase.CreateDocument
Set obAttachment = noDocument.CreateRichTextItem("strAttach")
Set EmbedObject = obAttachment.EmbedObject(EMBED_ATTACHMENT, "", strAttach)
'Add values to the created e-mail main properties.
With noDocument
.Form = "Memo"
.SendTo = strEmail
'.Body = strBody ' Where to send the body if HTML body isn't used.
.Subject = strSubject
.SaveMessageOnSend = True
End With
noSession.ConvertMIME = False
Set Body = noDocument.CreateMIMEEntity("Body") ' MIMEEntity to support HTML
Set stream = noSession.CreateStream
Call stream.WriteText(strBody) ' Write the body text to the stream
Call Body.SetContentFromText(stream, "text/html;charset=iso-8859-1", ENC_IDENTITY_8BIT)
noSession.ConvertMIME = True
'Send the e-mail.
With noDocument
.PostedDate = Now()
.Send 0, strEmail
End With
'Release objects from the memory.
Set EmbedObject = Nothing
Set obAttachment = Nothing
Set noDocument = Nothing
Set noDatabase = Nothing
Set noSession = Nothing
End Sub
Если бы Сомона могла направить меня в правильном направлении, я был бы очень признателен.
Edit:
Я провел немного больше расследований и обнаружил странность: если я посмотрю на отправленную папку, у всех писем будет значок скрепки с вложением, даже если вы входите в электронное письмо, даже в отправленных HTML-сообщениях нет не показывать вложение.