如何通过VBScript将单词文档附加到Lotus Notes邮件正文时保留格式?

时间:2012-06-07 18:19:39

标签: html vbscript ms-word formatting lotus-notes

我正在尝试自动化一个邮件系统,其中编辑过的Word文档将通过Lotus Notes邮寄给许多人。

我正在使用以下代码来执行此操作。此代码工作正常,但它在作为邮件发送时丢失了所有格式(例如粗体,斜体,段落等)。

Set objRange = ob_doc.Content
mailtext = ob_word.CleanString(objRange.Text)

'Create the mail document
Set notesDocument = notesDatabase.CreateDocument
'set to memo format
notesDocument.Form = "Memo"
'Set the subject
notesDocument.Subject = subject
'Set the body
Set notesRichTextItem = notesDocument.CreateRichTextItem("Body")
notesRichTextItem.AppendText(mailtext)

...在做了一些研究后,我尝试将单词doc转换为html以保持格式不变,但我无法将该html文件作为邮件正文邮寄。

3 个答案:

答案 0 :(得分:1)

您需要使用Notes中的MimeEntity类将电子邮件作为HTML发送。有关详细信息,请参阅此SO答案:Sending formatted Lotus Notes rich text email from Excel VBA

答案 1 :(得分:0)

或者您可以将Word文档作为附件发送。它并不优雅,但编码简单。

答案 2 :(得分:0)

如果您希望Word文档以与MS Word中显示的方式相同的方式出现在Notes客户端(或任何其他电子邮件客户端)中,那么您会感到头痛。最接近的解决方案是使用MS Word将文档保存为HTML(如您所述),然后使用Notes MIME类使用Word生成的HTML创建电子邮件(如Ken所述)。您将面临的最大问题是Word使用样式的方式。不同的电子邮件客户端对样式有不同的要求,并且Notes非常挑剔 - 例如,所有样式必须是内联的(不是全局的或外部的),Word不会这样做。