0

この VBA コードを使用して、Outlook の HTML メールから Web サイトのテキスト領域を作成しています。

テキストを保持したまま、HYPERLINK"website"websiteと HYPERLINK"mailto:email@email.com"email@email.comを削除したいと考えています。mailitem.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

これを使用してください。入力にはobjitem.bodyの代わりに「txt」を使用してください。

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 = Replace(txt, vbCrLf & vbCrLf, vbCrLf) Value = objItem.Body End If If objItem.BodyFormat = olFormatRichText Then ie.document.getElementById("message").Value = txt End If

于 2012-10-17T17:44:16.773 に答える