我一直在互联网上搜索数小时,以找到解决问题的方法。
我知道如何长时间导入邮件,但是无法保存HTML正文的格式,就像我手动将OL中的正文复制到访问权限的富文本备忘录字段中一样形式。
字段(olbody)绑定到SQL服务器表字段olbody(nvarchar(max)),并且在插入剪贴板内容时可以存储html邮件正文。
我甚至试图读取剪贴板中的.HTMLbody属性
clp.SetText .HTMLBody
clp.PutInClipboard
然后我在字段中用Ctrl + V手动粘贴剪贴板的内容,但同样,它不像HTML邮件那样显示。但我可以看到所有HTML命令,它们应该格式化邮件。
如果没有在访问字段中格式化邮件,内容几乎不可读,因为正文中没有tab,linekip等。
欢迎任何帮助。 感谢
答案 0 :(得分:1)
显示HTML的正确方法是使用Web浏览器。这意味着:使用Web浏览器控件!
您可以在加载时在Web浏览器控件中加载HTML,并在邮件字段更改时加载。
示例代码:
Private Sub Form_Current()
Dim wb As Object
Set wb = MyWebbrowserControl.Object
With wb
.Navigate2 "about:blank"
Do Until .ReadyState = 4 '=READYSTATE_COMPLETE
'This is a somewhat inefficient way to wait, but loading a blank page should only take a couple of milliseconds
DoEvents
Loop
.Document.Open
.Document.Write MemoField.Value
.Document.Close
End With
End Sub
将Memofield替换为您的邮件字段,将MyWebbroserControl替换为您的webbrowser控件,您应该准备好了。
请注意,您可能应该使用Access Web浏览器,而不是ActiveX Web浏览器。此代码适用于两者,但Access Web浏览器控件使用更现代的IE版本,并且没有不可移动的边框。