1

Word文書を作成し、ユーザーが以前に選択した電子メールの一部を貼り付けるOutlook VBAコードがあります。たとえば、関連のないコード部分が削除されています

Private Sub CreateDoc(M As MailItem)
Dim WApp As Word.Application, WDoc As Word.Document, I As Inspector

    Set I = M.GetInspector

    Set WApp = New Word.Application
    WApp.Visible = True
    Set WDoc = WApp.Documents.Add

    Select Case I.EditorType
    Case olEditorWord
        ' this works like a charm, even if multiple parts selected in MailItem
        I.WordEditor.Application.Selection.Copy
        WApp.Selection.PasteAndFormat wdFormatOriginalFormatting

    Case olEditorHTML
        ' trouble starts here ... I don't get it ... best I came up with is
        WApp.Selection.InsertAfter I.HTMLEditor.Selection.CreateRange.Text

    Case Else
        ' unsupported formats
    End Select

    ' clean up
    Set I = Nothing
    Set WDoc = Nothing
    Set WApp = Nothing
End Sub

Outlook 2003 および 2010 で動作します

問題:

私の問題は、olEditorHTMLフォーマットを含む選択したテキストを取得する方法がわからない部分にあります。これまでに思いついたのは、プレーンテキストを挿入することです。選択したテキストを HTMLEditor から Word に取得するための正しいコードを見つけるのを手伝ってくれる人はいますか?

4

1 に答える 1

2

この投稿をありがとう。あなたの問題は実際に私の解決策になりました。

以下の行は私にとってはうまくいきましたが、あなたにとってもうまくいくかもしれません[あなたがまだ解決策を探している場合:)

I.WordEditor.Application.Selection.Copy を I.WordEditor.Selection.Copy に変更すると、機能する場合があります。

于 2013-04-10T07:52:26.100 に答える