2011-11-24 100 views
1

我必須將電子郵件轉換爲.pdf,而不包含有關日期,接收者,抄送等信息的頭部。 是否有人如何做到這一點辦法?如何將電子郵件的正文轉換爲.pdf

我的另一個解決方案是將郵件的全部內容複製到一個新的單詞文檔中,並將其保存爲.pdf,但我不知道如何通過VBA複製整個主體。

[從評論編輯JMAX]
這裏是我試過的代碼:

sBody = oMail.HTMLBody 
Set wrdApp = CreateObject("Word.Application") 
wrdApp.Visible = True 
wrdApp.Documents.Add "C:\asd\Releasemail.dotx" 
wrdApp.Documents("Dokument1").Bookmarks().Item("Releaseinhalt").Range.Text = sBody 

我得到了我的整個HTML爲.doc印刷,但我想在郵件正文所示形式在Outlook中,而不是標記,它創造了這種外觀。例如,如果我在Outlook中按Ctrl + aCtrl + c,並在Word中按Ctrl + v,我將其所有樣式複製到Word的文本。
如何在VBA中做到這一點?

回答

0

如果你想獲得一個郵件的只是身體,你必須使用這種說法:

Dim Msg As Outlook.MailItem 
Body = Msg.HTMLBody 

你可以找到this blogon VBA Express

另一個例子有一個嘗試和來當你在某些代碼上遇到問題時回來。

[編輯]
要獲得正文內容而不是HTML,您可以使用:Msg.Body但您可能會丟失消息的格式。

+0

我還不知道如何實際打印Body或將其粘貼到word文檔中。對於outlook + word vba,我非常沒有經驗。 – HendsteR

+0

然而,你的問題並沒有顯示任何研究努力。我可以理解你是沒有經驗的,但你可以在尋求別人去做所有事情之前,先** **和**嘗試**。 – JMax

+0

現在,當我使用'sBody = oMail.HTMLBody 設置wrdApp =的CreateObject( 「Word.Application」) wrdApp.Visible =真 wrdApp.Documents.Add 「C:\ ASD \ Releasemail.dotx」 wrdApp.Documents (「Dokument1」)。Bookmarks()。Item(「Releaseinhalt」)。Range.Text = sBody ',我得到了整個HTML打印在.doc中,但我想要的郵件正文顯示在Outlook中,而不是標記,它創造了這種外觀。例如,如果我在Outlook中按** Ctrl + a **和** Ctrl + c **,然後在Word中按** Ctrl + v **,我將所有樣式的文本複製到Word中。如何在VBA中做到這一點? – HendsteR

相關問題