【发布时间】:2017-04-04 12:55:55
【问题描述】:
我很难在带有 VBA 的 Lotus Notes 中使用 HTML 对我的文本进行简单的突出显示。
我使用了以下属性<span style=background:yellow;mso-highlight:yellow> 和<style="background-color:yellow"> 没有任何成功,我几乎要放弃了。是否可以在 Lotus Notes 上做这个简单的事情?
这里附上我的代码和结果截图:
-
VBA 代码
Sub SendLocalExtensionEmail()
Dim nMailBody As String Dim nMailSubject As String Dim nMailRecipient As Variant Dim nMail As Object Dim nSession As Object Dim nDatabase As Object Dim nMime As Object Dim nMailStream As Object Dim nChild As Object Dim nSomeMailBodyText As String Dim amountOfRecipients As Integer
msg_var = "<font face=Arial> <p style=font-size:10pt>" & _
"Dear Sir/ Madam, <br />" & _
"<br />" & _
"MANY LINES OF TEXT" & _
"<font color=red><span style=background:yellow;mso-highlight:yellow>" & _
"Please revert within 5 working days" & _
"</font></span>" & _
"Best Regards, <br />" & _
"</font>"
nSomeMailBodyText = msg_var
nMailRecipient = ""
nMailSubject = "A great email"
Set nSession = CreateObject("Notes.NotesSession")
Set nDatabase = nSession.GetDatabase("", "")
Call nDatabase.OPENMAIL
Set nMail = nDatabase.CreateDocument
nMail.SendTo = "hello@world.com"
nMail.Subject = "hello@world.com"
nSession.ConvertMIME = False
Set nMime = nMail.CreateMIMEEntity
Set nMailStream = nSession.CreateStream
'vBody containung the text in Html
Call nMailStream.WriteText(nSomeMailBodyText)
Call nMailStream.WriteText("<br>")
'-------------------------------------------------------------------
Set nChild = nMime.CreateChildEntity
Call nChild.SetContentFromText(nMailStream, "text/html;charset=iso-8859-1", ENC_NONE)
Call nMailStream.Close
nSession.ConvertMIME = True
Call nMail.Save(True, True)
'Make mail editable by user
CreateObject("Notes.NotesUIWorkspace").EDITDOCUMENT True, nMail
'Could send it here
End Sub
- 我的结果的输出:
请帮忙!我很想知道那里发生了什么。
【问题讨论】:
-
您处理的是什么版本的 Lotus Notes?
-
您好@Richard Schwartz,非常感谢您的关注。我正在使用的 Lotus Notes 版本是 BM Lotus Notes 8.5(版本 8.5.2FP4 修订版 20111118.0756-FP4(发行版 8.5.2FP4))。这是一个企业版,所以我们不能更新它......
-
知道是什么原因造成的吗?如您所见,HTML 应该已正确显示,但我不明白为什么不正确!
-
好吧,mso-hightlight 肯定不起作用,因为“mso”属性只在 Microsoft 产品中起作用。在 Save 调用之前,您是否尝试过不使用 ConvertMIME=True 赋值?
-
哦,好吧,我不知道。好吧,它也不适用于在 Save 调用之前的 ConvertMIME=True 分配......仍然是相同的输出。
标签: html vba lotus-notes