想要替换Outlook邮件文件中的一些字符串。编写了以下代码 但是如果我使用MyItem.HTMLBody,那么文件有表格没有显示。还有其他选择吗?
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim myOlApp As Outlook.Application
Dim MyItem As Outlook.MailItem
Dim up As Object
Dim ation As Object
Dim hsbcval As Object
up = TextBox1.Text
ation = TextBox2.Text
hsbcval = TextBox3.Text
myOlApp = CreateObject("Outlook.Application")
MyItem = myOlApp.CreateItemFromTemplate("D:\this.oft")
MyItem.HTMLBody = Replace(MyItem.HTMLBody, "IDSPUPZ", up)
MyItem.HTMLBody = Replace(MyItem.HTMLBody, "HANMZ", ation)
MyItem.HTMLBody = Replace(MyItem.HTMLBody, "HSBCVALZ", hsbcval)
MyItem.Display()
End Sub
答案 0 :(得分:0)
首先,确保您通过替换操作获得有效的HTML标记。
其次,Outlook使用Word来呈现HTML标记,而不支持所有HTML标记/元素。在MSDN的以下文章中阅读有关受支持和不受支持的HTML元素,属性和级联样式表属性的更多信息:
确保结果HTML标记正确地在Word中呈现。
最后,确保将BodyFormat属性设置为HTML。正文文本格式确定用于显示消息文本的标准。 Microsoft Outlook提供三种正文文本格式选项:纯文本,富文本(RTF)和HTML。请注意,当BodyFormat属性从RTF切换到HTML时,所有文本格式都将丢失,反之亦然。