2010-07-21 14 views
5

Intenté establecer algunas propiedades en este objeto para enviar un correo electrónico con gran importancia, pero nada parecía funcionar. Esto es lo que he intentado:¿Cómo puedo establecer "Importancia alta" en el correo electrónico enviado usando VBA?

objEmail.Importance = 2 

objEmail.Configuration.Fields.Item("urn:schemas:mailheader:X-MSMail-Priority") = "High"  ' For Outlook 2003 

objEmail.Configuration.Fields.Item("urn:schemas:mailheader:X-Priority") = 2     ' For Outlook 2003 also 

objEmail.Configuration.Fields.Item("urn:schemas:httpmail:importance") = 2 

Function Send(sTo As String, sFrom As String, sSubject As String) 
    Set objEmail = CreateObject("CDO.Message") 
     objEmail.From = sFrom 
     objEmail.To = sTo 
     objEmail.Subject = sSubject 
     objEmail.Textbody = emailBody 
     objEmail.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "my.smtp.server" 
     objEmail.Configuration.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 
     // is there a property for high importance, outlook 2007? 
     objEmail.Configuration.Fields.Update   
    objEmail.Send 
End Function 
+0

¿El uso de '' objEmail.Fields.Item' lugar de trabajo objEmail.Configuration.Fields.Item'? –

+0

Lo siento, Martin, no fue así. –

+0

Sí, de alguna manera perdí la confianza en esa respuesta después de seguir buscando en Google. –

Respuesta

8

Ha sido un tiempo desde que trabajó con Outlook y VBA, pero todavía tengo varias hojas de trucos y enlaces. Yo desenterré esto; ¡Espero eso ayude!

Trate de establecer la propiedad .Importance en su objeto de correo

with myEmail 
    'can be olImportanceNormal, olImportanceHigh or olImportanceLow 
    .Importance = olImportanceNormal 
    .Subject = "Subject line" 
    .Body = "Body Content" 
end with 
+0

Doh! De alguna manera, extrañé por completo en su OP que está utilizando. Importancia. – L1Wulf

+2

En cualquier caso, olImportanceNormal es una constante incorporada y no debe estar entre comillas. – Fionnuala

+0

@Remou: buena captura. – L1Wulf

0

De Remou's link en los comentarios, esto funciona para Outlook 2010 a través de VBA:

cdoMessage.Fields.Item(cdoImportance) = cdoHigh 
4

.Importance = 2 (para cualquiera que quiera en 2015).

+1

actualización de 2013 a 2015 ... esta fue la solución – Sid

Cuestiones relacionadas