0

我正在使用此 VBA 代码从 Outlook 中的 HTML 电子邮件填充网站文本区域。

我想在保留文本的同时删除 HYPERLINK"website"website和 HYPERLINK 。"mailto:email@email.com"email@email.commailitem.body

我该怎么做?

ie.document.getElementById("message").Value = Replace(objItem.Body, vbCrLf & vbCrLf, vbCrLf)

一些例子:

www.google.com

在文本区域中出现 HYPERLINK "www.google.com"www.google.com 电子邮件出现的是 HYPERLINK "mailto:dr_patso@email.com"dr_patso@email.com

4

1 回答 1

0

使用这个,开始使用“txt”而不是objitem.body进行填充。

If objItem.BodyFormat = olFormatHTML Then
txt = objItem.Body
strt = InStr(txt, "HYPERLINK")
do until strt = 0
  nd = InStr(strt + 13, txt, """")
  txt = Left(txt, strt - 1) & Mid(txt, nd + 1)
  strt = InStr(txt, "HYPERLINK")
loop
End If

If objItem.BodyFormat = olFormatRichText Then
txt = objItem.Body
strt = InStr(txt, " HYPERLINK")
do until strt = 0
  nd = InStr(strt + 13, txt, """")
  txt = Left(txt, strt - 1) & Mid(txt, nd + 2)
  strt = InStr(txt, " HYPERLINK")
loop
End If

然后用正文填充文本区域..

If objItem.BodyFormat = olFormatHTML Then ie.document.getElementById("message").Value = Replace(txt, vbCrLf & vbCrLf, vbCrLf) End If If objItem.BodyFormat = olFormatPlain Then ie.document.getElementById("message")。 Value = objItem.Body End If If objItem.BodyFormat = olFormatRichText Then ie.document.getElementById("message").Value = txt End If

于 2012-10-17T17:44:16.773 回答