2013-09-30 2 views
0

Я пытаюсь получить свою подпись по умолчанию и применить ее к электронной почте, которую я настраиваю с помощью пользовательской формы. Я попробовал несколько вариантов, в том числе это: How to add default signature in OutlookДобавление подписи по умолчанию в Outlook Outlook VBA

, но это не похоже на работу ...

Private Sub addUpdate_Click() 
Dim mailObj As MailItem 
Dim mailBody, signature As String 
Dim oMail, oApp As Object 

newUser.Hide 

Set oApp = CreateObject("Outlook.Application") 
Set oMail = oApp.CreateItem(0) 

With oMail 
    .Display 
End With 
signature = oMail.body 

Set mailObj = CreateItem(olMailItem) 

mailBody = "<HTML><BODY><P>Hi " & firstName.Value & ",</P>" _ 
      & "<P>Thank you for your interest in the <STRONG>Metropolitan Sales</STRONG> website.</P>" _ 
      & "<P>Some of the features of the website include:</P>" _ 
      & "<UL><LI>Placing Orders</LI><LI>Order status & tracking</LI><LI>Detailed product information</LI>" _ 
      & "<LI>Specification sheets in PDF for all products</LI></UL>" _ 
      & "<P>These features can be accessed at:</P>" _ 
      & "<P><a href= 'http://www.metsales.com'>www.metsales.com</a>, then click on Catalog</p>" _ 
      & "<p><strong>Username : </strong>" & username.Value & "<br>" _ 
      & "<strong>Password : </strong>" & password.Value & "</p>" _ 
      & "<p>Feel free to contact me should you have any questions.</p><br>" _ 
      & "<p>Thank you,</p>" & signature & "</body></html>" 

With oMail 
    .Recipients.add (email.Value) 
    .Subject = "Metropolitan Sales Username and Password" 
    .BodyFormat = olFormatHTML 
    .HTMLBody = mailBody 
    .Send 
End With 
Unload newUser 
End Sub 
+1

Вы никогда не набор 'signature' к чему-либо. Посмотрите на сообщение, с которым вы связались, и вы увидите, что когда электронное письмо сначала создается, 'HTMLBody' ** является ** подписью. Вы сохраняете его в 'подпись', а затем добавляете его в конце, как это делает ваш текущий код. –

+0

Отмечено как дубликат [Как добавить подпись по умолчанию в Outlook] (http://stackoverflow.com/questions/8994116/how-to-add-default-signature-in-outlook). Если есть какая-то конкретная проблема, не затронутая в этой статье или комментарием @ DougGlancy, пожалуйста, перейдите к вопросу :) –

+1

Также обратите внимание, что вы должны правильно «Dim mailiBody as String, подпись As string» просто быть в безопасности. –

ответ

0

Так что я понял, как это сделать ... Там нет необходимости, чтобы создать oApp, поскольку это вызвано из исполняемого экземпляра Outlook.

Я также необходимо установить BodyFormat в olFormatHTML

Set oMail = CreateItem(0) 
With oMail 
    .BodyFormat = olFormatHTML 
    .Display 
End With 
signature = oMail.HTMLBody 
Смежные вопросы