Utilizar automatización para enviar un mensaje de Microsoft Outlook

Seleccione idioma Seleccione idioma
Id. de artículo: 161088 - Ver los productos a los que se aplica este artículo
Avanzado: Requiere codificación experto, interoperabilidad, conocimientos y multiusuario.

Expandir todo | Contraer todo

Resumen

En este artículo se muestra cómo utilizar automatización para crear y enviar un mensaje de Microsoft Outlook en Microsoft Access 97.

Este artículo se supone que está familiarizado con Visual Basic para aplicaciones y con la creación de aplicaciones de Microsoft Access mediante las herramientas de programación suministradas con Microsoft Access. Para obtener más información acerca de Visual Basic para aplicaciones, consulte el manual "Creación de aplicaciones con Microsoft Access 97".

Para obtener más información acerca de uso de automatización para enviar un mensaje de Microsoft Exchange, consulte en contacto con el siguiente artículo en Microsoft Knowledge Base:
153311Utilizar automatización para enviar un mensaje de Microsoft Exchange

Más información

Nota: puede que el código siguiente no funcione correctamente si ha instalado la Actualización de seguridad de correo electrónico de Outlook. Para obtener información adicional acerca de esta actualización, consulte alguno de los artículos siguientes en Microsoft Knowledge Base, dependiendo de la versión de Outlook que tenga instalada:
262631OL2000: Información acerca de la actualización de seguridad correo electrónico de Outlook
262617OL98: Información acerca de la actualización de seguridad de correo electrónico de Outlook
El método SendObject proporciona una forma de enviar un mensaje de correo MAPI mediante programación en Microsoft Access. Sin embargo, el EnviarObjeto método no le otorga acceso para completar la funcionalidad de correo, como la capacidad para adjuntar un archivo externo o establecer la importancia del mensaje. El ejemplo siguiente utiliza Automatización para crear y enviar un mensaje de correo que puede utilizar para aprovechar muchas características en Microsoft Outlook que no están disponibles con el método SendObject.

Existen seis pasos principales cuando se utilice Automatización para enviar un mensaje de correo de Microsoft Outlook:

  • Inicializar la sesión de Outlook
  • Crear un nuevo mensaje
  • Agregar a los destinatarios (A, CC y CCO) y resolver sus nombres
  • Establecer las propiedades válidas, tales como el asunto, cuerpo y importancia
  • Agregar datos adjuntos (si hay alguno)
  • Mostrar y enviar el mensaje
Para enviar un mensaje de correo de Microsoft Outlook mediante programación, siga estos pasos:

  1. Cree un archivo de texto de ejemplo denominado Customers.txt en c:\Mis documentos carpeta.
  2. Inicie Microsoft Access y abra la base de datos de ejemplo Neptuno.mdb.
  3. Cree un módulo y escriba la línea siguiente en la sección Declaraciones si no aparece ya allí:
    Option Explicit
  4. En el menú Herramientas, haga clic en referencias.
  5. En el cuadro referencias, haga clic en el modelo de objetos de Microsoft Outlook 8.0 y, a continuación, haga clic en Aceptar.

    Nota: Si el modelo de objetos de Microsoft Outlook 8.0 no aparece en el cuadro Referencias disponibles, busque su unidad de disco duro para el archivo Msoutl8.olb. Si no puede encontrar este archivo, debe ejecutar el programa de instalación de Microsoft Outlook para instalarlo antes de continuar con este ejemplo.
  6. Escriba el siguiente procedimiento en el nuevo módulo:
          Sub SendMessage(DisplayMsg As Boolean, Optional AttachmentPath)
              Dim objOutlook As Outlook.Application
              Dim objOutlookMsg As Outlook.MailItem
              Dim objOutlookRecip As Outlook.Recipient
              Dim objOutlookAttach As Outlook.Attachment
    
              ' Create the Outlook session.
              Set objOutlook = CreateObject("Outlook.Application")
    
              ' Create the message.
              Set objOutlookMsg  = objOutlook.CreateItem(olMailItem)
    
              With objOutlookMsg
                  ' Add the To recipient(s) to the message.
                  Set objOutlookRecip = .Recipients.Add("Nancy Davolio")
                  objOutlookRecip.Type = olTo
    
                  ' Add the CC recipient(s) to the message.
                  Set objOutlookRecip = .Recipients.Add("Michael Suyama")
                  objOutlookRecip.Type = olCC
    
                 ' Add the BCC recipient(s) to the message.
                  Set objOutlookRecip = .Recipients.Add("Andrew Fuller")
                  objOutlookRecip.Type = olBCC
    
                 ' Set the Subject, Body, and Importance of the message.
                 .Subject = "This is an Automation test with Microsoft Outlook"
                 .Body = "This is the body of the message." &vbCrLf & vbCrLf
                 .Importance = olImportanceHigh  'High importance
    
                 ' Add attachments to the message.
                 If Not IsMissing(AttachmentPath) Then
                     Set objOutlookAttach = .Attachments.Add(AttachmentPath)
                 End If
    
                 ' Resolve each Recipient's name.
                 For Each ObjOutlookRecip In .Recipients
                     objOutlookRecip.Resolve
                 Next
    
                 ' Should we display the message before sending?
                 If DisplayMsg Then
                     .Display
                 Else
                     .Save
                     .Send
                 End If
              End With
              Set objOutlook = Nothing
          End Sub
    						
  7. Para probar este procedimiento, escriba la línea siguiente en la ventana Depuración y, a continuación, presione ENTRAR.
    SendMessage True, "C:\Mis Documents\Customers.txt"
    Observe que se muestra un mensaje nuevo en Microsoft Outlook con datos adjuntos.

    Para llamar para enviar el mensaje sin mostrar en Microsoft Outlook, al procedimiento con un valor False para el primer argumento:
    SendMessage false, "C:\Mis Documents\Customers.txt"
    Para enviar el mensaje sin especificar un archivo adjunto, omitir el segundo argumento al llamar al procedimiento.
    True SendMessage

Referencias

Para obtener más información sobre cómo utilizar automatización en Microsoft Access, buscar el índice de la Ayuda de automatización o pregunte el Ayudante de Office de Microsoft Access 97.

Para obtener más información sobre cómo utilizar automatización para controlar Microsoft Outlook, vea los artículos siguientes en Microsoft Knowledge Base:
160502ACC: Utilizar automatización para agregar citas a Microsoft Outlook

161012VBA: Cómo crear un nuevo elemento de contacto en Outlook con automatización

Propiedades

Id. de artículo: 161088 - Última revisión: viernes, 19 de enero de 2007 - Versión: 3.3
La información de este artículo se refiere a:
  • Microsoft Access 97 Standard Edition
Palabras clave: 
kbmt kbhowto kbinterop KB161088 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 161088
Renuncia a responsabilidad de los contenidos de la KB sobre productos a los que ya no se ofrece asistencia alguna
El presente artículo se escribió para productos para los que Microsoft ya no ofrece soporte técnico. Por tanto, el presente artículo se ofrece "tal cual" y no será actualizado.

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com