Вставить подпись после вставленного тела в почту Outlook, используя Excel VBA - PullRequest
0 голосов
/ 19 декабря 2018

Я использую приведенный ниже код для создания электронного письма из Excel:

Sub TEST()

Dim outlook As Object
Dim newEmail As Object

Set outlook = CreateObject("Outlook.Application")
Set newEmail = outlook.CreateItem(0)

With newEmail
    .To = Sheet1.Range("L2").Text
    .Subject = Sheet1.Range("E1").Text

    ' .Body = "" & vbNewLine & signature
    .Display

    Dim xInspect As Object
    Dim pageEditor As Object

    Set xInspect = newEmail.GetInspector
    Set pageEditor = xInspect.WordEditor

    Sheet1.Range("B4:L37").Copy

    pageEditor.Application.Selection.Start = Len(.Body)
    pageEditor.Application.Selection.End = pageEditor.Application.Selection.Start
    pageEditor.Application.Selection.Paste

    Set pageEditor = Nothing
    Set xInspect = Nothing
End With

Set newEmail = Nothing
Set outlook = Nothing

End Sub

Моя подпись автоматически появится перед текстом.

Есть ли способ вставить мою подпись впоследствии

1 Ответ

0 голосов
/ 19 декабря 2018

Создайте подпись на новом листе в Excel и добавьте ее в тело письма, так же, как вы делали для содержимого тела, лучше настроить подпись.

Иначе вы можете использовать эту идею:

if  Not (Account  Is  Nothing)  Then
   set Signature = Account.NewMessageSignature
   if  Not (Signature  Is  Nothing)  Then
    Signature.ApplyTo Msg,  false   'apply at the bottom
   End If
End If

Из этого поста: Как добавить подпись по умолчанию в Outlook

...