如何使用VBA将HTML Outlook邮件导入到MS Access中

我一直在网上搜索几个小时以找到解决我的问题的方法。如何使用VBA将HTML Outlook邮件导入到MS Access中

我知道如何长时间导入邮件,但无法像手动将OL从主体复制到访问表单上的Rich-text备忘录字段时那样保留HTML主体的格式。

字段(olbody)绑定到SQL服务器表字段olbody(nvarchar(max)),并且可以在插入剪贴板的内容时存储html邮件正文文本。

我甚至试过在剪贴板

clp.SetText .HTMLBody 

clp.PutInClipboard

阅读.HTMLbody属性,然后我手动粘贴在该领域使用Ctrl + V将剪贴板中的内容,但再次,它没有显示像HTML邮件。但是我可以看到所有的HTML命令,它们应该格式化邮件。

没有在访问字段中格式化邮件,内容几乎是不可读的,因为没有标签,lineskip等等。

任何帮助欢迎。 谢谢

回答:

显示HTML的正确方法是使用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版本,并且不带有不可移动的边框。

以上是 如何使用VBA将HTML Outlook邮件导入到MS Access中 的全部内容, 来源链接: utcz.com/qa/266591.html

回到顶部